創建多線程的方式:繼承Thread類和實現Runnable接口
阿新 • • 發佈:2019-04-19
ack 繼承性 限制 class stat 多線程 pri int 適合
1、通過繼承Thread類的方式創建多線程(這裏只是簡單的代碼演示創建多線程的方法)
1 package com.baozi.exer;
2
3 public class ThreadDemo {
4 public static void main(String[] args) {
5 Thread1 t1=new Thread1();
6 Thread2 t2=new Thread2();
7 t2.start();
8 t1.start();
9 }
10 }
11 class Thread1 extends Thread {
12 @Override
13 public void run() {
14 for (int i = 0; i <= 100; i++) {
15 if (i % 2 == 0) {
16 System.out.println(Thread.currentThread().getName() + " : " + i);
17 }
18 }
19 }
20 }
21 class Thread2 extends Thread {
22 @Override
23 public void run() {
24 for (int i = 0; i <= 100; i++) {
25 if (i % 2 != 0) {
26 System.out.println(Thread.currentThread().getName() + " : " + i);
27 }
28 }
29 }
30 }
2、通過實現Runnable接口的方式創建多線程
1package com.baozi.test; 2 3 public class ThreadRunnable { 4 public static void main(String[] args) { 5 MyThread1 mt1 = new MyThread1(); 6 Thread t1 = new Thread(mt1); 7 t1.start(); 8 } 9 } 10 class MyThread1 implements Runnable { 11 @Override 12 public void run() { 13 for (int i = 0; i < 100; i++) { 14 if (i % 2 == 0) { 15 System.out.println(Thread.currentThread().getName() + " : " + i); 16 } 17 } 18 } 19 }
3、兩種方式的比較:
- 實現Runnable接口的方式沒有類的單繼承性的限制性;
- 實現的方式更適合處理多個線程之間有共享數據的情況;
所以在開發中會優先選擇實現Runnable接口的方式實現多線程
創建多線程的方式:繼承Thread類和實現Runnable接口