Java多線程一

Java 線程一 Thread類

通過繼承Thread類來實現,調用Thread.start();方法來啓動線程。

在調用start方法後,Java會啓動新線程來調用run方法,如果直接調用run方法,是不會啓動新線程的。

示例代碼如下:


public class Main {
	
	public static void main(String[] args) {
		new Main();
	}
	
	public Main(){
		MyThread myThread = new MyThread();
		myThread.start();
		for(int i=0;i<10000;i++){
			System.out.println("Good!");
		}
	}
	
	public class MyThread extends Thread{
		public void run(){
			
			for(int i=0;i<10000;i++){
				System.out.println("Nice!");
			}
		}
	}

}

運行結果:
Good!Nice! 隨機交叉打印。

示例二:

public class Main {
	
	public static void main(String[] args) {
		new Main();
	}
	
	public Main(){
		new MyThread("Good!").start();
		new MyThread("Nice!").start();
	}
	
	public class MyThread extends Thread{
		private String message;
		public MyThread(String message){
			this.message = message;
		}
		public void run(){
			for(int i=0;i<10000;i++){
				System.out.println(message);
			}
		}
	}

}

運行結果與示例一相同:
Good!和Nice!隨機交叉運行。

Java 線程二 Runnable接口

示例代碼一:

public class Main {
	
	public static void main(String[] args) {
		new Main();
	}
	
	public Main(){
		new Thread(new MyPrint("Good!")).start();
		new Thread(new MyPrint("Nice!")).start();
	}
	
	public class MyPrint implements Runnable{
		private String message;
		public MyPrint(String message){
			this.message = message;
		}
		public void run(){
			for(int i=0;i<10000;i++){
				System.out.println(message);
			}
		}
	}

}
運行結果:

Good!和Nice!隨機交叉打印


Thread類 和 Runnable接口

Thread類本身也實現了Runnalbe接口,也有run方法,只不過Thread類的run方法主體是空的,通常被子類覆蓋 override。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章