java多執行緒---順序列印ABC的三種實現---join方法
阿新 • • 發佈:2019-01-08
使用join方法,讓三個執行緒之間存在等待關係
程式碼如下:
執行結果:package com.zcj.join; public class JoinTest { public static void main(String[] args) { ThreadA threadA = new ThreadA(); ThreadB threadB = new ThreadB(threadA); ThreadC threadC = new ThreadC(threadB); threadA.start(); threadB.start(); threadC.start(); } } class ThreadA extends Thread{ @Override public void run() { // TODO Auto-generated method stub System.out.println("A"); } } class ThreadB extends Thread{ private ThreadA threadA; public ThreadB(ThreadA threadA){ this.threadA =threadA; } @Override public void run() { // TODO Auto-generated method stub try { threadA.join(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("B"); } } class ThreadC extends Thread{ private ThreadB threadB; public ThreadC(ThreadB threadB){ this.threadB =threadB; } @Override public void run() { // TODO Auto-generated method stub try { threadB.join(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("C"); } }
A
B
C