大家看看,这个程序为什么会有问题啊?

acboboly 2005-08-30 07:55:00
在c:\temp下有个Cases.java文件
执行了如下2个命令:
C:\temp>javac Cases.java

C:\temp>java Cases
Exception in thread "main" java.lang.NoClassDefFoundError: Cases


编译javac的时候没有报错,而java的时候就出现上面的错误了,不知道是怎么回事!代码如下:
public class Cases{
public static void main(String[] args){
float x = 9;
float y = 5;
int z = (int)(x/y);
switch (z){
case 1:
x = x+2;
case 2:
x=x+3;
default:
x= x+1;
}
System.out.println("x="+x);
}

}




是不是路径有问题啊??还是怎么的!我是双系统,d盘是系统盘现在!
谢谢指点!!
...全文
112 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcjl 2005-08-30
  • 打赏
  • 举报
回复
回复 | 收藏此页 | 专题 | 公告 | 管理 | 保存 | 关闭窗口


点击其中的“管理”链接就可以揭帖了
acboboly 2005-08-30
  • 打赏
  • 举报
回复
好了,谢谢大家!
问哈,是怎么样结贴啊?
按什么可以结啊?
superslash 2005-08-30
  • 打赏
  • 举报
回复
classpath中加c:\temp
interhanchi 2005-08-30
  • 打赏
  • 举报
回复
错误的意思是,就根本没有Cases.class的这个文件! 你仔细看一下C:\temp>下面有没有生成Cases.class这个文件!
lake2005 2005-08-30
  • 打赏
  • 举报
回复
程序没有问题的。运行后结果为:x=15.0
如果运行不成应该是路径的问题。
北京-李大鹏 2005-08-30
  • 打赏
  • 举报
回复
在classpath中加上“.;”也就是指定当前路径。
norains 2005-08-30
  • 打赏
  • 举报
回复
是不是少了break语句?
switch (z){
case 1:
x = x+2;
break;
case 2:
x=x+3;
break;
default:
x= x+1;
break;
}
acboboly 2005-08-30
  • 打赏
  • 举报
回复
我知道程序没有问题.可是产生的class文件和原来的java文件都在c:\temp

为什么执行的时候会找不到呢?谁知道啊?
skywalker_9394 2005-08-30
  • 打赏
  • 举报
回复
你的程序没问题我试了一下,应该是你的java命令的路径问题

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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