日期:2014-05-20  浏览次数:20775 次

Uncaught exception java/lang/NoclassDefFoundError 问题
简单的java 多线程程序: 

class MyThread extends Thread{

public void run(){

System.out.println("Thread say: Hello, World !");

}

}



public class MoreThreads{

public static void main(String[] args){

new MyThread();

new MyThread().start();

System.out.println("Main say: Hello World ");

}

}

在Windows xp 下用 jdk 运行,可以正常输入。
但在 cldc1.1 JVM 中运行,却报错: Uncaught exception java/lang/NoclassDefFoundError:MyThread. 
  at MoreThreads.main(+0)

请问是什么原因啊?我看cldc jvm 的 api 中也有 Thread.java这个类啊。

------解决方案--------------------
我运行没问题呀
------解决方案--------------------
你在run里面try ,catch一下,或者使用java.lang.Thread类的
public void setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh)
或者
public static void setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh)
------解决方案--------------------
异常说找不到MyThread的这个class,确认java文件被编译了吗?

另外main方法里,为什么这么写:
new MyThread();

new MyThread().start();

这样相当于创建了两个线程.