当前位置: 技术问答>java相关
请问Runnable接口为什么能实现多线程?
来源: 互联网 发布时间:2015-06-18
本文导语: Runnable接口写的非常简单,但为什么类实现给接口之后能实现多线程?他的代码如下: package java.lang; public interface Runnable { public abstract void run(); } 为什么写了run方法之后就实现了多线程? | ...
Runnable接口写的非常简单,但为什么类实现给接口之后能实现多线程?他的代码如下:
package java.lang;
public interface Runnable {
public abstract void run();
}
为什么写了run方法之后就实现了多线程?
package java.lang;
public interface Runnable {
public abstract void run();
}
为什么写了run方法之后就实现了多线程?
|
Runnable就是一个标记,为所有的线程对象作个标记,表示这个对象有线程过程可调用。而run函数实际上是JVM决定什么时候调用的。
这个方法很常用,可以认为是一个pattern
这个方法很常用,可以认为是一个pattern
|
并不是你直接implement这个interface就可以实现多线程,而是,在实现的时候,你需要加入一个Thread 到你的类里面去,例如:
public class testing implements Runnable{
private Thread myThread=new Thread(this);
//这个this指的是当前Runnable的实例
public testing(){
myThread.start();
}
public void run(){
//你要执行的代码
}
}
public class testing implements Runnable{
private Thread myThread=new Thread(this);
//这个this指的是当前Runnable的实例
public testing(){
myThread.start();
}
public void run(){
//你要执行的代码
}
}
|
你看看Thread的构造器函数吧!
public Thread(Runnable target,String name)
用这个Thread的对象调用start就可以了!
public Thread(Runnable target,String name)
用这个Thread的对象调用start就可以了!