java初学者 马士兵java视频中线程这章的一个小程序编译通过,运行出错

linsenlinwei 2010-11-25 06:01:35
public class TestThread1{
public static void main(String args[]){
Runner1 r=new Runner1();
Thread th=new Thread(r);
th.start();
for(int i=0;i<100;i++){
System.out.println("main"+i);
}

}
}

class Runner1 implements Runnable{
public void run(){
for(int i=0;i<100;i++){
System.out.println("runner"+i);
}
}
}


这个代码差不多就是马士兵那个视频上的,编译通过但是运行时出现
Exception in thread "main" java.lang.NoClassDefFoundError: TestThread1/java
我在线等,希望有人帮我回答一下.

另外
public class TestThread1 {
public static void main(String args[]) {
Runner1 r = new Runner1();
r.start();
//r.run();
//Thread t = new Thread(r);
//t.start();

for(int i=0; i<100; i++) {
System.out.println("Main Thread:------" + i);
}
}
}

//class Runner1 implements Runnable {
class Runner1 extends Thread {
public void run() {
for(int i=0; i<100; i++) {
System.out.println("Runner1 :" + i);
}
}
}
这个是马士兵视频下载过来时的代码编译出现Exception in thread "main" java.lang.UnsupportedClassVersionError: TestThread1 (
Unsupported major.minor version 50.0) 我的jdk是1.6的,是不是说现在不支持了的意思,谢谢大家,我在线等着
...全文
200 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
linsenlinwei 2010-11-26
  • 打赏
  • 举报
回复
不管怎么说,谢谢大家的帮助.还有一个问题是,有的时候出现莫名其妙的编译问题退出当前dos窗口再重新开一个就正常,这应该是sun的问题吧
linsenlinwei 2010-11-26
  • 打赏
  • 举报
回复
现在知道原因了,是版本的问题,我用java -versio查看一下是1.4的,原因是前几天安装了Oracle,呵呵
linsenlinwei 2010-11-26
  • 打赏
  • 举报
回复
哎,我没有说清自己的问题,编译是可以通过的,这说明不是文件名和类名不一致的问题,我用直接在命令行编译的,不存在软件的问题,至于环境变量应该不至于吧,别的都可以运行的。另外我以前经常出现的一个问题,就是有的程序运行时出现错误但退出当前运行的命令行重新开一个再运行就正常了,不知道这是怎么回事。我在看看吧,如果真的像各位说的那样,第一个问题就很容易改正,第二个我就完全不会,唯一的办法是把1.6的jdk换成1.5的试试,但这么做总有削足适履的嫌疑。
l657513352 2010-11-26
  • 打赏
  • 举报
回复
建议楼主先用JC 不要用EC
写项目时在用那个!

如果用的是DOS 看看环境变量
uastation 2010-11-26
  • 打赏
  • 举报
回复
NoClassDefFoundError :找不到类错误

UnsupportedClassVersionError : 不支持的类版本错误

应该是文件名与公有类的类名不一致造成的!
hnlylgxyz09055534 2010-11-26
  • 打赏
  • 举报
回复
文件名和类名不一致,改一下类名就可以了
jayqean 2010-11-25
  • 打赏
  • 举报
回复
window菜单下Perferences选项
--Java--Compiler--JDK compliance level
jayqean 2010-11-25
  • 打赏
  • 举报
回复
这问题 就是你的jdk版本不一致
在eclipse里改下jdk Version就OK了
hepehuan 2010-11-25
  • 打赏
  • 举报
回复
第一个问题:没找打这个类
第二个问题:编译的class的版本和运行的版本不符吧
tmhk123 2010-11-25
  • 打赏
  • 举报
回复
你是不是把生成class文件的路径改成别的了啊
BeanCho 2010-11-25
  • 打赏
  • 举报
回复
应该是类名和文件名不一样,把存储此代码的文件的名字改为TestThread1.java。
昵称很不好取 2010-11-25
  • 打赏
  • 举报
回复
看看class名和文件名是不是一样的
24K純帥 2010-11-25
  • 打赏
  • 举报
回复
不是代码的问题,是LZ自己的问题。。错误是没找到这个类
sunyiz 2010-11-25
  • 打赏
  • 举报
回复
楼主如何运行的?

62,635

社区成员

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

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