Java中使用Runnable接口创建并启动多线程

       使用Runnable接口创建多线程的方法暂时还没有体验到有什么优点,感觉整体上比使用Thread直接创建稍微麻烦一点。而且,创建的过程中本身也用到了Thread构造方法。写一段测试代码:

class RunnableDemoimplements Runnable

{

       public void run()

       {

              int i = 0;

              for(i = 0;i < 10;i++)

              {

                     System.out.println("run" + (i + 1) + " times");

              }

       }

 

       public static void main(String[] args)

       {

              Runnable runnable_demo1 = newRunnableDemo();

              Runnable runnable_demo2 = newRunnableDemo();

              Runnable runnable_demo3 = newRunnableDemo();

 

              Thread thread_demo1 = newThread(runnable_demo1);

              Thread thread_demo2 = newThread(runnable_demo2);

              Thread thread_demo3 = new Thread(runnable_demo3);

 

              thread_demo1.start();

              thread_demo2.start();

              thread_demo3.start();

       }

}

       编译运行的结果如下:

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javac RunnableDemo.java

 

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>java RunnableDemo

run 1 times

run 2 times

run 3 times

run 4 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 10 times

run 1 times

run 2 times

run 1 times

run 3 times

run 2 times

run 4 times

run 3 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 4 times

run 10 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 10 times

       从乱序的特点能够看出多线程的功能已经启动。

       大致考虑两种创建多线程的方法,找找异同点:

       1,都需要创建一个类,只是一个集成类而另一个实现接口;

       2,根据创建的类创建实例化对象;

       3,第2不完成之后,集成Thread类的对象已经可以启动线程,而实现接口的对象则还需要通过Thread方法创建新的线程对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值