多线程,是java的特殊机制。所谓线程就是程序执行的流程。“多线程”就是可以在同一时刻能够执行多个程序块(注意,是程序块,而不是程序),这样一来就可以使得程序的执行速度大大增加。
1 package Test; 2 3 class CTest { 4 private String id; 5 public CTest(String str){ 6 id = str; 7 } 8 9 public void run(){ 10 for(int i = 0;i<4;i++){ 11 for(int j = 0;j<1000;j++); 12 System.out.println(id+"is runing ..."); 13 } 14 } 15 } 16 public class Demo3{ 17 public static void main(String[] args) { 18 CTest dog = new CTest("dog"); 19 CTest kitty = new CTest("kitty"); 20 dog.run(); 21 kitty.run(); 22 } 23 }
【注意】第20,21行使用的是run()。
如果要在某个类中启动线程需要具备的条件是:
1、这个类是Thread类的子类。
2、线程的处理必须编写在run()方法中,run()在Thread中第一,需要在子类中覆盖。
1 class CTest extends Thread{ 2 private String id; 3 public CTest(String str){ 4 id = str; 5 } 6 7 public void run(){ 8 for(int i = 0;i<4;i++){ 9 for(int j = 0;j<1000;j++); 10 System.out.println(id+"is runing ..."); 11 } 12 } 13 } 14 public class Demo3{ 15 public static void main(String[] args) { 16 CTest dog = new CTest("dog"); 17 CTest kitty = new CTest("kitty"); 18 dog.start(); 19 kitty.start(); 20 } 21 }
本次的输出就是:dogis runing ...
kittyis runing ...
交互出现。
dog.start() kitty.start().使用对象来启动线程,如果继续使用run()将不会启动线程,出现的结果先执行dog.run()执行完毕之后在执行kitty.run()