java--多线程之Thread继承

多线程,是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()

你可能感兴趣的:(thread)