黑马程序员技术交流社区
标题:
线程初级问题 已解决
[打印本页]
作者:
王璐
时间:
2012-6-14 17:46
标题:
线程初级问题 已解决
本帖最后由 王璐 于 2012-6-15 08:23 编辑
class Demo extends Thread
{
public void run()
{
System.out.println("demo run");
}
}
class
{
public static void main(String[] args)
{
Demo d=new Demo();//创建好一个线程。
d.start();
}
}
复制代码
程序中:“Demo d=new Demo();”为什么是一创建对象就创建好了一个线程?
作者:
李盼
时间:
2012-6-14 17:48
本帖最后由 李盼 于 2012-6-14 17:50 编辑
因为Demo这个类继承了Thread并且重写了run方法!
具备多线程的类必须要继承Thread方法或者实现Runnable接口,并且重写run方法,而run方法体里面就是线程执行的代码!
作者:
张天天
时间:
2012-6-14 17:53
因为它是继承自Thread类的类,所以就是创建了一个线程。就和创建一个异常类一样啊
在Java中通过run方法为线程指明要完成的任务,
有两种技术来为线程提供run方法。
1.继承Thread类并重写run方法。
2.通过定义实现Runnable接口的类进而实现
run方法。
作者:
葛奎
时间:
2012-6-14 17:55
Demo d=new Demo(); 因为Demo继承了Thread类,重写了run方法.
至于Tread类是如何建立线程,这就与系统底层相互工作有关
我们没有必要知道
只要知道建立线程需要用到Tread类就行了
作者:
张_涛
时间:
2012-6-14 18:55
我在Thread的源代码中找到这么一个静态代码块:
static {
registerNatives();
}
它的意思就是对本地方法进行注册,很多类中都有很多类里都有这个方法,但是执行的目标是不相同的。
像毕向东老师讲IO操作的时候,最终这些是由本地方法实现的。
再深入的也不理解了,目前大概就知道这些。
作者:
胡卿
时间:
2012-6-14 19:18
因为Demo继承了Thread类,重写了run方法,Thread是线程,它的子类当然也是线程了
作者:
黄昆
时间:
2012-6-14 19:20
Demo类继承了Thread类,然后重写父类的run方法,那么Demo类中建立的对象都是线程对象
作者:
孙浩迪
时间:
2012-6-14 19:40
class Demo extends Thread // Demo继承了父类 Thread
{
public void run() //重写了父类的run 方法。
{
System.out.println("demo run");
}
}
class
{
public static void main(String[] args)
{
Demo d=new Demo();//创建好一个线程。
d.start(); //调用了父类有start 方法 启动线程, 子类继承父类,子类可以调用父类的方法。
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2