Runnable接口实现多线程
创建线程另一途径就是用Thread类直接创建线程对象,构造方法是:
Thread(Runnable traget)
构造方法中的参数是一个Runnable类型的接口
创建线程对象时必须向构造方法的参数传递一个实现Runnable使用Runnable接口
接口类的实例,该实例对象称作所创线程的目标对象,当线程调用strat()方法后,一旦轮到它来享受CPU资源,目标对象就会自动调用接口中的run()方法
public class Demo44{
public static void main(String[] args){
House house = new house;
house.setCake(10);
Thread antRed = new Thread(house);
antRed.setName("红蚂蚁")
Thread antBlack = new Thread(house);
antRed.setName("黑蚂蚁")
antRed.start();
antBlack.start()
}
}
public class House implements Runnable{
int cake;
public void setCake(int c){
cake = c;
}
@Override
public void run(){
int m = 2;
while(true){
if(cake<=0){
System.out.println(Thread.currentThread().getName()+"进入死亡状态");
return;
}
cake = cake - m;
System.out.println(Thread.currentThread().getName()+"吃了"+m+"克蛋糕");
System.out.println(Thread.currentThread().getName()+"发现蛋糕还剩下"+cake+"克");
try{
Thread.sleep(1000);
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
}
运行结果:

本文通过示例代码详细介绍了如何使用Runnable接口实现多线程。通过创建目标对象并将其作为参数传递给Thread类的构造方法,可以启动线程执行特定任务。文章中的案例展示了两个蚂蚁线程同时吃蛋糕的过程,解释了线程的运行机制。

339

被折叠的 条评论
为什么被折叠?



