java基礎:執行緒
1:什麼是執行緒
public class MainThread {
public static void main(String[] args) {
System.out.print("main--->");
m1();
System.out.print("main");
}
public static void m1() {
System.out.print("m1--->");
m2();
m3();
}
public static void m2() {
System.out.print("m2--->");
}
public static void m3() {
System.out.print("m3--->");
}
}
這個程式,有幾條執行路徑呢?其實只有一條,就是main主執行緒
輸出結果:
main--->m1--->m2--->m3--->main
2:多執行緒實現方法之implement Runnable介面
public class Runner1 implements Runnable {
@Override
public void run() {
for(int i = 0; i < 100 ;i++){
System.out.println("Runner1----"+i);
}
}
}
public class TestThread1 {
public static void main(String[] args) {
Runner1 r = new Runner1();
//r.run(); 方法呼叫
Thread t = new Thread(r);
t.start(); //執行緒啟動
for (int i = 0; i <= 100; i++) {
System.out.println("main-------" + i);
}
}
}
輸出結果:
main-------0
Runner1----0
main-------1
Runner1----1
main-------2
main-------3
Runner1----2
main-------4
Runner1----3
main-------5
Runner1----4
main-------6
Runner1----5
main-------7
Runner1----6
main-------8
Runner1----7
main-------9
Runner1----8
main-------10
Runner1----9
看以看出有兩條執行路徑,兩個執行緒,一個是main主執行緒,一個是Runner1執行緒。
3:執行緒建立方法之:extends Thread類
public class Runner2 extends Thread {
@Override
public void run() {
for(int i = 0; i < 10 ;i++){
System.out.println("Runner1----"+i);
}
}
}
public class TestThread2 {
public static void main(String[] args) {
Runner2 r = new Runner2();
r.start(); //執行緒啟動
for (int i = 0; i <= 10; i++) {
System.out.println("main-------" + i);
}
}
}
輸出結果同上!
注意:既然執行緒建立有兩種方式,那麼我們採用哪一種呢?原則上最好採用implement Runnable介面
因為使用介面方式,更加靈活,不僅可以繼承,還可以implement其他介面。
相關文章
- Java 執行緒基礎Java執行緒
- Java - 執行緒基礎Java執行緒
- Java執行緒池一:執行緒基礎Java執行緒
- java - 多執行緒基礎Java執行緒
- 【Java基礎】:執行緒控制Java執行緒
- Java—多執行緒基礎Java執行緒
- java基礎:執行緒同步Java執行緒
- Java 多執行緒基礎(四)執行緒安全Java執行緒
- Java 多執行緒基礎(八)執行緒讓步Java執行緒
- Java 基礎(十四)執行緒——下Java執行緒
- Java基礎之執行緒安全Java執行緒
- Java 多執行緒基礎 - CyclicBarrierJava執行緒
- Java多執行緒-基礎篇Java執行緒
- Java 基礎(十三)執行緒——上Java執行緒
- java執行緒程式設計(一):執行緒基礎(轉)Java執行緒程式設計
- java基礎 關於執行緒安全Java執行緒
- 【JAVA】【面試】【基礎篇】- 執行緒、鎖Java面試執行緒
- Java基礎之執行緒那些事Java執行緒
- Java-基礎-執行緒入門Java執行緒
- JAVA_基礎多執行緒(一)Java執行緒
- JAVA多執行緒-基礎篇-synchronizedJava執行緒synchronized
- Java 多執行緒基礎(六)執行緒等待與喚醒Java執行緒
- 執行緒基礎執行緒
- 玩轉java多執行緒 之多執行緒基礎 執行緒狀態 及執行緒停止實戰Java執行緒
- Java 多執行緒基礎(十一)執行緒優先順序和守護執行緒Java執行緒
- java基礎-多執行緒初步瞭解Java執行緒
- Java併發基礎(2)------執行緒池Java執行緒
- Java基礎之多執行緒程式設計Java執行緒程式設計
- JAVA多執行緒和併發基礎Java執行緒
- Java多執行緒程式設計基礎Java執行緒程式設計
- 【Java基礎】:執行緒的生命週期Java執行緒
- Java多執行緒-基礎及實現Java執行緒
- 程式執行緒篇——程式執行緒基礎執行緒
- 多執行緒基礎執行緒
- 最全java多執行緒學習總結1--執行緒基礎Java執行緒
- 多執行緒系列(1),多執行緒基礎執行緒
- 多執行緒系列(三):執行緒池基礎執行緒
- 多執行緒系列(二):多執行緒基礎執行緒