A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 强强_U00ts 中级黑马   /  2015-7-23 20:10  /  213 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

创建线程有两种方法,:

第一种方法:;

继承Thread类。

步骤:

1,定义类继承Thread。

2,复写Thread类中的run方法。

目的:将自定义代码存储在run方法。让线程运行。





3,调用线程的start方法,

该方法两个作用:启动线程,调用run方法。

[java] view plaincopy
class ThreadDemo extends Thread   
{     
    public void run()//使用新线程运行for循环中的代码  
        {  
            for (int x=0;x<10;x++ )  
            {  
                System.out.println("新线程"+x);//在控制台输出10条测试语句  
            }  
        }  
    public static void main(String[] args)   
    {  
        ThreadDemo t = new ThreadDemo();//创建Thread类的对象  
        t.start();//调用Thread类的start()方法来启动新线程  
  
      
        for (int x = 0;x<10 ;x++ )//在主线程中运行for循环中的代码  
        {  
            System.out.println("主线程"+x);//输出十条测试语句  
        }  
         
    }  
}  

第二种方法:

实现Runnable接口创建线程

步骤:

1,新建一个类,该类实现了Runnable接口并重写了run()方法,.run()方法中包含要在新线程中运行的代码

2,使用刚刚编写的类创建Runnablie接口类型的对象.

3,使用Thread类的构造方法创建Thread类的对象..

4 4,调用Tread类的start()方法来运行新线程
[java] view plaincopy
class RunnableDemo implements Runnable   
{     
    public void run()//使用新线程运行for循环中的代码  
        {  
            for (int x=0;x<10;x++ )  
            {  
                System.out.println("新线程"+x);//在控制台输出10条测试语句  
            }  
        }  
    public static void main(String[] args)   
    {  
        Runnable r = new RunnableDemo();//创建Runnable接口的对象  
        Thread t = new Thread(r);//利用Runnable接口的对象创建Thread类对象  
  
        t.start();//调用Thread类的start()方法来启动新线程  
        for (int x = 0;x<10 ;x++ )//在主线程中运行for循环中的代码  
        {  
            System.out.println("主线程"+x);//输出十条测试语句  
        }  
         
    }  
}  
java仅支持单继承,创建大量的Tread类对象开销打
Runnable接口不存在这个问题,更加适用

继承Thread:线程代码存放在Thread子类run方法中.
实现Runnable:线程代码存放在接口的子类run中

1 个回复

倒序浏览
今天面试就考了这个内容,比这个稍微复杂一点
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马