线程之Runnable接口

3 篇文章 0 订阅

实现Runnable接口。 

Runnable只是一个接口,它里面只有一个run()方法,没有start()方法,

    public interface Runnable{  
    public void run();  
    } 

Thread类,有一个构造方法,参数是Runnable对象,也就是说可以通过Thread类来启动Runnable实现多线程。 

class MyThread implements Runable{
       
    @Override
    public void run() {
        //处理具体的逻辑
    }
}

 启动线程 1 (Thread类的构造函数届时接受了一个Runable参数)

MyThread myThread = new MyThread();
new Thread(myThread).start;

启动线程 2 (匿名类方式实现)更好用

new Thread(new Rnuable(){
    
    @Override
    public void run() {
        //处理具体的逻辑
    }
}).start();

二 举个栗子

就用java写吧

创建一个类MyRunnable,实现Runnable接口,

public class MyRunnable implements Runnable {
 
    private String name;
 
    public MyRunnable(String name) {
        this.name = name;
    }
    @Override
    public void run() {
        System.out.println("MyRunnable is " + name);
    }
}

和继承Thread类的实现方法基本一样,其实Thread类也是实现了Runnable接口,

public class Test1 {
 
    public static void main(String[] args){
 
        MyRunnable myRunnable1=new MyRunnable("Runnable1");
        MyRunnable myRunnable2=new MyRunnable("Runnable2");
        MyRunnable myRunnable3=new MyRunnable("Runnable3");
 
        Thread myThread1=new Thread(myRunnable1);
        myThread1.start();
        System.out.println("myThread1 id ="+myThread1.getId());
        Thread myThread2=new Thread(myRunnable2);
        myThread2.start();
        System.out.println("myThread1 id ="+myThread2.getId());
        Thread myThread3=new Thread(myRunnable3);
        myThread3.start();
        System.out.println("myThread1 id ="+myThread3.getId());
    }
 
}

结果

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值