java -- 多线程的两种创建方法

来源:互联网 发布:linux 2台机器互信 编辑:程序博客网 时间:2024/05/21 11:31

什么是进程? 什么是线程?

参见:http://blog.csdn.net/zidan_2011/article/details/7279228

个人感觉比较好理解


怎么创建多线程?

创建多线程有两种方式: 1, 继承 Thread 类。   

   2, 实现 Runnable 接口

先来看看第一种方法: 继承 Thread 类。

步骤:

1, 定义类继承 Thread 类。

2, 在子类中复写 Thread 中的 run()方法; 

3, 建立子类对象, 调用 start() 方法。

具体看代码

class ThreadTest_3{public static void main(String[] args) {ThreadDemo td = new ThreadDemo();td.start();for (int i = 0; i < 60; i++){System.out.println("嘿嘿嘿嘿---"+i);}}}class ThreadDemo extends Thread{public void run(){for (int i = 0; i < 60; i++){System.out.println("哈哈---"+i);}}}

第二种方法: 实现 Runnable 接口。

步骤:

1,定义类实现 Runnable 接口, 

2, 覆盖 Runnable 接口中的 run()方法。

3, 建立 实现 Runnable 接口的 子类的对象。

4, 通过 Thread 类建立对象, 并且将 根据 Runable 接口建立的子类对象作为实际参数传给 Thread 类的的构造函数。

5, 通过 Thread 类的对象调用 start() 方法并调用 Runnable 子类的run()方法。

具体看代码

class ThreadTest_4{public static void main(String[] args) {RunnableDemo rd = new RunnableDemo();Thread t = new Thread(rd);t.start();for (int i = 0; i < 60; i++){System.out.println("嘿嘿嘿嘿---"+i);}}}class RunnableDemo implements Runnable//extends Thread{public void run(){for (int i = 0; i < 60; i++){System.out.println("哈哈---"+i);}}}

一般推荐使用第二种创建方式, 其实 Thread 类也实现了 Runnable 接口。


两者的区别主要是: 继承 与 实现的区别。 // java不允许多继承, 但是可以多实现。
0 0
原创粉丝点击