java多线程(第二种方式)

    实现runnable接口。
    class Demo implements Runnable{
        private String name;
        Demo(String name){
            this.name = name;
        }
        public void run(){
            for(int x=1;x<=20;x++){
    System.out.println("name="+name+".."+Thread.currentThread().getName()+".."+x);
            }
        }
    }

    class ThreadDemo2{
        public static void main(String[]args){
            Demo d = new Demo("demo");//并不是线程对象
            //创建Thread类对象,将runnable接口的子类对象作为参数传递给Thread类的构造函数。
            Thread t1 = new Thread(d);
            Thread t2 = new Thread(d);
            //将线程启动
            t1.start();
            t2.start();
            System.out.println();
        }
    }

线程从0开始编号。

基本步骤:
1,定义类实现Runnable接口
2,覆盖接口中的run方法,将线程任务代码定义到run方法中。
3,创建Thread类的对象。
4,将Runnable接口中的子类对象作为参数传递给Thread类的构造函数
5,调用Thread类的start方法开启线程。

一般开发时采用实现Runnable接口这种方式,这种方式好处是避免了单继承的局限性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值