黑马程序员技术交流社区

标题: 都是Integer惹得祸。 [打印本页]

作者: 邓斌    时间: 2012-4-14 16:14
标题: 都是Integer惹得祸。
本帖最后由 邓斌 于 2012-4-14 16:46 编辑
  1. class IntergerDemo
  2. {
  3. public static void main(String[] args)
  4. {
  5. //整数类型的最大值
  6. sop("int max:"+Integer.MAX_VALUE);
  7. }

  8. public static void sop(String str)
  9. {

  10. System.out.println(str);
  11. }
  12. }
复制代码
简单的一段代码。错误:
D:\java_X\day5>javac Integer.java
.\Integer.java:20: 错误: 类重复: IntergerDemo
class IntergerDemo
^
Integer.java:25: 错误: 无法访问Integer
                sop("int max:"+Integer.MAX_VALUE);
                               ^
  错误的源文件: .\Integer.java
    文件不包含类Integer
    请删除该文件或确保该文件位于正确的源路径子目录中。
2 个错误


day5文件中只有StringBufferDemo1.java 。无其他.java 和.class文件。
早几天好像多线程编译一个程序也是这样。重新启动cmd后才可以。


错误信息。
  1. D:\java_X\day5>javac Integer.java
  2. .\Integer.java:20: 错误: 类重复: IntegerDemo2
  3. class IntegerDemo2
  4. ^
  5. Integer.java:25: 错误: 无法访问Integer
  6. sop("int max:"+Integer.MAX_VALUE);
  7. ^
  8. 错误的源文件: .\Integer.java
  9. 文件不包含类Integer
  10. 请删除该文件或确保该文件位于正确的源路径子目录中。
  11. 2 个错误

  12. D:\java_X\day5>javac Integer.java
  13. .\Integer.java:20: 错误: 类重复: IntegerDemo1
  14. class IntegerDemo1
  15. ^
  16. Integer.java:25: 错误: 无法访问Integer
  17. sop("int max:"+Integer.MAX_VALUE);
  18. ^
  19. 错误的源文件: .\Integer.java
  20. 文件不包含类Integer
  21. 请删除该文件或确保该文件位于正确的源路径子目录中。
  22. 2 个错误

  23. D:\java_X\day5>javac Integer.java
  24. .\Integer.java:20: 错误: 类重复: IntegerDemo
  25. class IntegerDemo
  26. ^
  27. Integer.java:25: 错误: 无法访问Integer
  28. sop("int max:"+Integer.MAX_VALUE);
  29. ^
  30. 错误的源文件: .\Integer.java
  31. 文件不包含类Integer
  32. 请删除该文件或确保该文件位于正确的源路径子目录中。
  33. 2 个错误
复制代码

作者: 邓斌    时间: 2012-4-14 16:16
本帖最后由 邓斌 于 2012-4-14 16:20 编辑

类名改成Hello 或者IntegerDemo 改什么都一样。类重复。

把sop("int max:"+Integer.MAX_VALUE);
改成sop("abc");
编译就通过了

是不是我JDK有问题。调用不到Interger   
该怎么解决?
作者: 翟友伟    时间: 2012-4-14 16:41
本帖最后由 翟友伟 于 2012-4-17 07:32 编辑

....................................................
作者: 邓斌    时间: 2012-4-14 16:45
翟友伟 发表于 2012-4-14 16:41
public static void sop(String str)
{

}是类结束  代码没问题的。。现在编译通过了。。我把day5文件的class和bak文件全删除后可以了。
可能是我JDK有问题。也可能是EP备份出的问题。。以前用UE好像是要把备份去掉。。EP可能也一样。。

有童鞋知道其中原因麻烦就回复下。。不过现在好了。我也不在线求等了。
作者: 翟友伟    时间: 2012-4-14 16:45
本帖最后由 翟友伟 于 2012-4-14 16:48 编辑
邓斌 发表于 2012-4-14 16:16
类名改成Hello 或者IntegerDemo 改什么都一样。类重复。

把sop("int max:"+Integer.MAX_VALUE);

还是没明白你想说什么。。。求其他朋友帮帮忙吧
作者: 蒋亮    时间: 2012-4-14 21:31
你输入命令错误啊,D:\java_X\day5>javac Integer.java
你的类名是IntergerDemo,改为javac IntergerDemo.java就可以了
作者: 蒋亮    时间: 2012-4-14 21:33
翟友伟 发表于 2012-4-14 16:41
public static void sop(String str)
{

朋友,纠正你一个错误,一个字符串加上任何一个对象或者变量或者常量,结果都是一个字符串,
"int max:"+Integer.MAX_VALUE依然是一个字符串
作者: 邓斌    时间: 2012-4-14 21:38
jl_qiqi 发表于 2012-4-14 21:33
朋友,纠正你一个错误,一个字符串加上任何一个对象或者变量或者常量,结果都是一个字符串,
"int max:" ...

谢谢。文件名是没错的。可能是编译器或者其他一些问题。
呵呵。那位朋友回答居然也可以加技术分。。不过都辛苦了。反正解决了。
作者: 黑马-王建雨    时间: 2012-4-14 21:55
程序无错误。你编译错了。大哥,你写代码时缩进好不好。

良好的习惯是成功的前提呀。希望能解决你的以后,我们一起加油。
作者: 邓斌    时间: 2012-4-14 22:27
啷个里个郞 发表于 2012-4-14 21:55
程序无错误。你编译错了。大哥,你写代码时缩进好不好。

良好的习惯是成功的前提呀。希望能解决你的以后, ...

呵呵。朋友。你也知道代码没问题。编译我也知道我肯定没问题。编译那么多次。你看我都发出来了。。
我依旧记得吧sop("int max:"+Integer.MAX_VALUE);改成sop("a");编译就成功了。输出a.
然后改回去。还是编译失败。。
我是后面把所有class文件和bak文件删除后才编译成功的。
我觉得是编译器bak 备份搞得鬼。写HTML用 UE都知道要吧备份去掉。我也不知道什么原因
不纠结了。。。谢谢。。
多少有点问题现在都还新手。慢慢就知道了。

作者: 韩新凯    时间: 2012-4-14 22:40
代码我已经亲身测试过了,不管是用javac----java 编辑还是用myeclipse都没有出错。你检查一下自己哪没注意出错了。
至少你的javac后面应该是javac  IntergerDemo.java而不是javac Interger.java   成功后再java IntergerDemo。应该就行了。
作者: 韩新凯    时间: 2012-4-14 22:42
看着这些回复我也灰常纠结啊,把编译的时候javac Interger.java 改成javac IntergerDemo.java吧!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2