关闭

创建线程的第二种方式--实现Runnab…

278人阅读 评论(0) 收藏 举报
分类:

步骤:

1、定义类实现Runnable借口

2、覆盖Runnable接口中的run方法

3、通过Thread类建立线程对象

4、将Runnable借口的子类对象作为实际参数传递给Thread类的构造函数

为什么要将Runnable接口的子类对象传递给Thread的构造函数

因为 自定义的run方法所属的对象是Runnable接口的子类对象

所以 要让线程去指定对象的run方法,就必须明确该run方法所属对象

5、调用Thread类的start方法开启线程并调用Runnable接口子类的run方法

 

 

class Ticket implements Runnable//extends Thread
{
 private static int tick = 100;
 public void run()
 {
  while(true)
  {
   if(tick>0)
   {
   System.out.println(currentThread().getName()+"...sale :"+tick--);
   }
  }
 }

}

class  TicketDemo
{
 public static void main(String[] args)
 {
  
  Ticket t = new Ticket();

  Thread t1 =new Thread(t);
  Thread t2 =new Thread(t);
  Thread t3 =new Thread(t);
  Thread t4 =new Thread(t);

  t1.start();
  t2.start();
  t3.start();
  t4.start();
 }
}

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5210次
    • 积分:140
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:8篇
    • 译文:0篇
    • 评论:0条
    文章分类