java实现多线程的两种方式:
package utils;
class MyThread extends Thread{
private String name;
public MyThread(String name){
this.name=name;
}
public void run(){
System.out.println(name+":运行!");
}
}
//class MyThread implements Runnable{
// public void run(){
// System.out.println("运行");
// }
// }
public class TestDemo {
public static void main(String args[]){
// MyThread m1= new MyThread();
// MyThread m2= new MyThread();
// Thread t1=new Thread(m1);
// Thread t2=new Thread(m2);
// t1.start();
// t2.start();
MyThread my1 =new MyThread("线程1");
MyThread my2 = new MyThread("线程2");
my1.start();
my2.start();
}
}
问题一:start()和run()这两种方法有什么区别?
key:start()方法是提交程序,并未获得CPU资源
run()方法是执行程序,此时已经获得cpu资源