package myJava;
class ST extends Thread
{
public ST(String str)
{
super(str);
}
public void run()
{
String[] B={"起床","早饭","上班","下班"};
String[] S={"备课","上课","布置作业","下课"};
String Name=null;
Name=getName();
for(int i=0;i<4;i++)
{
if(Name.equals("B"))
{
System.out.println(Name+":"+B[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
if(Name.equals("S"))
{
System.out.println(Name+":"+S[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
}
}
}
public class TwoThreadsTest
{
public static void main(String[] args)
{
new ST("B").start();
new ST("S").start();
}
}
用控制台命令调试的
编译不出错,为何
Exception in thread "main" java.lang.NoClassDefFoundError: f:\myJava\TwoThreadsT
est
好几个正确的程序都是这样
class ST extends Thread
{
public ST(String str)
{
super(str);
}
public void run()
{
String[] B={"起床","早饭","上班","下班"};
String[] S={"备课","上课","布置作业","下课"};
String Name=null;
Name=getName();
for(int i=0;i<4;i++)
{
if(Name.equals("B"))
{
System.out.println(Name+":"+B[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
if(Name.equals("S"))
{
System.out.println(Name+":"+S[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
}
}
}
public class TwoThreadsTest
{
public static void main(String[] args)
{
new ST("B").start();
new ST("S").start();
}
}
用控制台命令调试的
编译不出错,为何
Exception in thread "main" java.lang.NoClassDefFoundError: f:\myJava\TwoThreadsT
est
好几个正确的程序都是这样
找不到TwoThreadsTest.class
文件名是TwoThreadsTest.java吗?
Classpath包含当前目录(.)了吗?
...
{
public static void main(String[] args)
{
new ST("B").start(); //调用包内类
new ST("S").start();
}
}final class ST extends Thread //加了类类型为final
{
public ST(String str)
{
super(str);
}
public void run()
{
String[] B={"起床","早饭","上班","下班"};
String[] S={"备课","上课","布置作业","下课"};
String Name=null;
Name=getName();
for(int i=0;i<4;i++)
{
if(Name.equals("B"))
{
System.out.println(Name+":"+B[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
if(Name.equals("S"))
{
System.out.println(Name+":"+S[i]);
try
{
sleep((long)(Math.random()*1000));
}
catch(InterruptedException e)
{
}
}
}
}
}
运行结果:
B:起床
S:备课
B:早饭
S:上课
S:布置作业
B:上班
B:下班
S:下课
java.lang.NoClassDefFoundError
找不到TwoThreadsTest.class
文件名是TwoThreadsTest.java吗?
Classpath包含当前目录(.)了吗?
...
谢谢你的答复
文件名是TwoThreadsTest.java
classpath没有包含当前目录,
如何包含,为什么要这样做呢!