黑马程序员技术交流社区

标题: 创建线程有两种方式: [打印本页]

作者: jlq    时间: 2015-10-29 11:27
标题: 创建线程有两种方式:
第一种:继承Tread类。
步骤:
1)定义类继承Thread
2)复写Thread类中的run()方法
复写run()方法的目的:将自定义代码存储到 run方法中,让线程运行。
3)调用线程的start方法(start:启动线程,调用run方法)
第二种方式:声明实现Runnable接口,该类然后实现run方法().然后可以分配该类的一个实例,在创建Thread时作为参数传递并启动。
                    Runnable接口应该有那些打算通过某一线程执行其实例的类来实现 ,类必须定义一个称为run的无参方法。
步骤:
1)定义类实现Runnable接口
2)覆盖Runable接口中的run方法
将线程要运行的代码存放在run方法中。
3)通过Thread类建立线程对象
4)将Runnable接口的子类对象作为实际参数传递给Thread类的构造函数。
为什么将Runable接口的子类对象作为实际参数传递给Thread类的构造函数。 ?
因为自定义run方法所属的对象是Runnable接口的子类对象,
所以要让接口去执行指定对象的run方法。就必须明确该方法所属的对象。
5)调用Thread类的start方法开启线程并调用Runnable接口子类的run方法。


作者: 洋葱头头    时间: 2015-10-29 15:42
实现runnable
作者: 大自然的搬运工    时间: 2015-10-29 16:27
什么时候用Runnable?什么时候用Thread




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2