创建线程的方式

第一:写一个类,集成Thread类,重写run方法,实例化这个类,调用strat方法
package test06;
public class T extends Thread{
      public void run() {
         for(;;)
       System.out.println(1);
   }
  }
package test06;
public class Test {
    public static void main(String[] args) {
            T t = new  T();  //这个就是new ,新建状态
            t.start();    //runnable -->调用完之后就成了running
          //然后再执行T里面run方法的1,执行完1。就是在执行下面的111,所以说叫多线程。
            因为在调用strat的时候就分为两支,所以输出顺序不定。
               for(;;)
                   System.out.println(111); 
}
}
第二种:写一个类,实现Runnable接口,实现run方法,实例化Thread的类,实例化这个类,作为    
             参数传输Thread构造器,调用strat方法
package test06;
public class I implements Runnable{
   public void run() {
     for(;;)
    System.out.println(222);
}
}
package test06;
public class Test {
   public static void main(String[] args) {
   T t = new  T();  //这个就是new ,新建状态
    t.start();    //runnable -->调用完之后就成了running
             //然后再执行T里面run方法的1,执行完1。就是在执行下面的111,所以说叫多线程。
                    因为在调用strat的时候就分为两支,所以输出顺序不定
 
   / /new一个Thread类,调用构造方法
    Thread t1 = new Thread(new I());  //new新建状态
     t1.start();//runnable -->调用完之后就成了running
}
}
总结
因为每次不管继承还是实现都要写一个类,一个类要继承一个类,一个类要实现一个借口,这样很麻烦,用内部类来写多线程,比较简单一点
用匿名内部类来写多线程
继承类的方式
package test06;
public class Test {
public static void main(String[] args) {
   //匿名内部类写多线程实现
    new Thread(){
       public void run(){
        for(;;)
           System.out.println(333);
  }
  }.start();
 }
 }
实现接口的方式
package test06;
public class Test {
   public static void main(String[] args) {
   //匿名内部类写多线程实现(实现接口的方式)
     new Thread(new Runnable(){
          public void run(){
            for(;;)
               System.out.println(444);
        }
    }).start();
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值