关于Runable接口和Thread的构造器
来源:互联网 发布:怎么在淘宝找阿里旺旺 编辑:程序博客网 时间:2024/06/13 13:31
//在注释的地方选择合适的选项填入,以保证程序可以从1记数到100
class Counter
{
public int startHere=1;
public int endHere=100;
public static void main(String[] args)
{
new Counter().go();
}
void go()
{
//**********
Thread t=new Thread(a);
t.start();
}
}
A. Thread a=new Thread()
{
public void run()
{
for (int i=startHere;i<=endHere;i++)
System.out.println(i);
}
};
B. Runnable a=new Runnable()
{
public void run()
{
for (int i=startHere;i<=endHere;i++)
System.out.println(i);
}
};
我一看,就选择了B,可以我错了,答案是AB.
我觉得就纳闷了,怎么Thread的构造器怎么还有Thread(Thread t)这种形式的啊?
哦,仔细想想,应该是Implicit Casting的情况,因为Thread类实现了Runnable接口,所以Thread类的匿名子类可以上溯造型到Runnable型,作为Runnable型的参数传入Thread构造器.
不知道大家的看法如何?
-------------------------------------------------------------------------------------------------
同意。
Thread当然也是Runnable的了。
------------------------------------------------------------------------------------------------
原因就是如此,不过不只是匿名子类可以,Thread类本来就可以被强制转换为Runnable类型
class Counter
{
public int startHere=1;
public int endHere=100;
public static void main(String[] args)
{
new Counter().go();
}
void go()
{
//**********
Thread t=new Thread(a);
t.start();
}
}
A. Thread a=new Thread()
{
public void run()
{
for (int i=startHere;i<=endHere;i++)
System.out.println(i);
}
};
B. Runnable a=new Runnable()
{
public void run()
{
for (int i=startHere;i<=endHere;i++)
System.out.println(i);
}
};
我一看,就选择了B,可以我错了,答案是AB.
我觉得就纳闷了,怎么Thread的构造器怎么还有Thread(Thread t)这种形式的啊?
哦,仔细想想,应该是Implicit Casting的情况,因为Thread类实现了Runnable接口,所以Thread类的匿名子类可以上溯造型到Runnable型,作为Runnable型的参数传入Thread构造器.
不知道大家的看法如何?
-------------------------------------------------------------------------------------------------
同意。
Thread当然也是Runnable的了。
------------------------------------------------------------------------------------------------
原因就是如此,不过不只是匿名子类可以,Thread类本来就可以被强制转换为Runnable类型
- 关于Runable接口和Thread的构造器
- 关于Runable和Thread的使用
- Thread类和Runable接口
- Thread类和Runable接口
- Thread类和Runable接口
- 继承Thread和实现Runable接口的区别
- thread和runable的区别
- Thread和Runable的区别
- Runable和thread的区别
- thread和runable的区别
- runable和thread的区别
- Thread和Runable的区别
- Runable和thread的区别(多线程必须用Runable)
- Runable和thread的区别(多线程必须用Runable)
- Runable和thread的区别(多线程必须用Runable)
- Runable和thread的区别(多线程必须用Runable)
- Runable和thread的区别(多线程必须用Runable)
- 通俗易懂的解释Thread和Runable关系
- 基于PHP的AJAX技术实现文件异步上传
- 《TCP/IP详解,卷2:实现》读书笔记-深入mbuf的结构
- IBM SOA123
- 在PHP中全面阻止SQL注入式攻击之一
- RFC1321 about MD5
- 关于Runable接口和Thread的构造器
- 将类成员函数用做C回调函数
- 在PHP中全面阻止SQL注入式攻击之二
- 愚人节快乐
- 一点点小问题,关于用传址返回值类型API的返回值处理问题
- 禁止复制
- Fctory Method模式
- Web2.0成功要诀:学什么不像什么
- CE系统启动时自动运行应用程序