TestThread.java:
//继承Thread类的方法实现多线程 public class TestThread extends Thread{ @Override public void run() { System.out.println("多线程的运行代码"); for (int i = 0 ; i<4;i++){ System.out.println("这是多线程的逻辑代码:"+i); } } }
Test.java:
public class Test { public static void main(String[] args) { Thread t = new TestThread(); t.start();//启动线程 System.out.println("-----------------"); System.out.println("-----------------"); System.out.println("-----------------"); /* 多次运行main方法之后 我们发现main方法中打印的3行与开启线程运行run方法中的打印语句是混合起来 是因为main方法执行t.start()方法开启多线程之后,就相当于main方法之外开出了一个支流 这个时候t.start()的之后的main方法的其他代码的运行就与run方法的运行无关了 《就是各走各的》 这个就是多线程的异步性,t.start()与下面输出是并行执行的 */ } }
输出结果1:
多线程的运行代码
这是多线程的逻辑代码:0
-----------------
-----------------
-----------------
这是多线程的逻辑代码:1
这是多线程的逻辑代码:2
这是多线程的逻辑代码:3
输出结果2:
-----------------
-----------------
-----------------
多线程的运行代码
这是多线程的逻辑代码:0
这是多线程的逻辑代码:1
这是多线程的逻辑代码:2
这是多线程的逻辑代码:3