{
public static void main(String[] args)
{
while(true)
{
System.out.println("MAIN");
}
MyThread myThread = new MyThread();
myThread.run();
}
}
class MyThread
{
public void run()
{
while(true)
{
System.out.println("MyThread");
}
}
}
这个不可以运行,因为while(true){}循环后还有语句。具体为什么我也不清楚。可能while(true)语句执行后,就没有后面语句的原因了吧,解决办法
MyThread myThread = new MyThread();
myThread.run();
放在while之前或者里面,结果都一样。
我是想学多线程的这是开始。
class Test002
{
public static void main(String[] args)
{
MyThread myThread = new MyThread();
myThread.start(); //Thread类中start()方法用来调用下面的run();启动一个线程,所以下面必须是run(方法)
while(true)
{
System.out.println("MAIN");
}
}
}
class MyThread extends Thread
{
public void run() //重新Thread类中run(),并用start()调用
{
while(true)
{
System.out.println("MyThread");
}
}
}
这个是可以,但是java中是单继承!所以用一个接口,实现接口不影响继承。
class Test002
{
public static void main(String[] args)
{
MyThread myThread = new MyThread();
Thread thread = new Thread(myThread);
thread.start();
while(true)
{
System.out.println("MAIN");
}
}
}
class MyThread implements Runnable
{
public void run()
{
while(true)
{
System.out.println("MyThread");
}
}
}
Thread(Runnable target)构造方法。。既然是构造方法实现就需要实例化。
Runnable是一个接口。implements实现接口方法。就一个run()方法。用Thread(Runnable target)构造方法创建线程对象时,为run()实现;额Runnable接口的实例对象这里好难。既然是构造方法那就实例化同时构造它,构造的它中参数是个接口,要实现一个接口中的方法,就要implement是接口,然后构造这个接口中的方法。然后传入构造方法中的参数是个实例对象。。。