147题中的76题出的有问题,大家来讨论讨论。

luoyuanfan 2003-08-11 10:23:44
题目出的有问题。
按题目根本不能成功编译,将ClassOne中的getVar()改成public的后才能成功编译。
但运行后出现错。
java.lang.NoClassDefFoundError: ClassTest
Exception in thread "main" Normal Termination
为什么还出现NoClassDefFoundError?
...全文
68 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoyuanfan 2003-08-15
  • 打赏
  • 举报
回复
同意。
zhousm6 2003-08-15
  • 打赏
  • 举报
回复
可能是java命令跟javac 命令对参数的要求不同吧,到了这一步了我觉得没必要再在这个问题上继续研究下去了。看看别的问题不是更好吗?
luoyuanfan 2003-08-15
  • 打赏
  • 举报
回复
另加一句,编译时用“\”行。
luoyuanfan 2003-08-15
  • 打赏
  • 举报
回复
我运行时指定了路径。
java com\abc\pkg2\ClassTest
但是不行。我是想问为什么把“\”换成“/”就行了?
zhousm6 2003-08-14
  • 打赏
  • 举报
回复
假设拟设定的classpath是c:\test\class
由于你的source里面有package,编译后class在c:\test\class\com\abc\pkg2下面。
无论你再那个目录底下运行java className,都会寻找c:\test\class目录下有没有这个class,找不到就会报错。
现在class在c:\test\class\com\abc\pkg2下面,所以要把路径也指定。
luoyuanfan 2003-08-14
  • 打赏
  • 举报
回复
楼上这位,这样运行是正确的,但是为什么呢???
zhousm6 2003-08-14
  • 打赏
  • 举报
回复
java com/abc/pkg2/ClassTest
luoyuanfan 2003-08-14
  • 打赏
  • 举报
回复
关于NoClassDefFoundError我也不得其解,所以想向大家请教。
luole_xman 2003-08-13
  • 打赏
  • 举报
回复
private char var =‘a’;
private只能在同一类使用>
zhousm6 2003-08-13
  • 打赏
  • 举报
回复
应该是编译不过,getVar()不是public的,只能在包内部应用,除此以外就算是子类也无法调用。
不过怎么说也不是NoClassDefFoundError。
zhirenshao 2003-08-13
  • 打赏
  • 举报
回复
这道题目应该是打错了,如果是没打错的话,那就应该选A, Compilation will fail

题目如下

ClassOne.java
---------------
1. package com.abc.pkg1;
2. public class ClassOne {
3. private char var =‘a’;
4. char getVar() { return var; }
5. }

ClassTest.java
---------------
1. package com.abc.pkg2;
2. import com.abc.pkg1.ClassOne;
3. public class ClassTest extends ClassOne {
4. public static void main(String[]args) {
5. char a = new ClassOne().getVar();
6. char b = new ClassTest().getVar();
7. }
8. }

What is the result?

A. Compilation will fail.
B. Compilation succeeds and no exceptions are thrown.
C. Compilation succeeds but an exception is thrown at line 5 in ClassTest.java.
D. Compilation succeeds but an exception is thrown at line 6 in ClassTest.java.
zhousm6 2003-08-11
  • 打赏
  • 举报
回复
sorry,按不知道题目,所以不能确定是题目的错还是你的错。
倾向于是你的环境没配好。
luoyuanfan 2003-08-11
  • 打赏
  • 举报
回复
怎么没人理我?

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧