初始化了一个没有run()方法的线程类,是否会出错? (安邦)
2014-10-23 22:44
183 查看
要分情况:
第一种情况:通过继承Thread类来实现线程。这种方法,没有run(),编译、运行都不会报错。
public class TestThread
{
public static void main(String[] args)
{
AThread t = new AThread();
t.start();
System.out.println("没有编译运行异常");// 输出:没有编译运行异常
}
}
class AThread extends Thread //Thread类已经实现了空的run()方法。
{
//代码
}
第二种情况:通过Runnable接口实现线程,没有run()方法,编译会出现异常。原因是通过接口实现,该类必须重写Runnable接口中的抽象方法run()方法。
public class TestRunnable
{
public static void main(String[] args)
{
AThread t = new AThread();
Thread t1= new Thread(t);
t1.start();
System.out.println("编译运行没有错");
}
}
class AThread implements Runnable
{
public void run() //必须有此方法否则编译报错。它是Runnable接口中的抽象方法。
{
System.out.println(”run()方法”);
}
}
第一种情况:通过继承Thread类来实现线程。这种方法,没有run(),编译、运行都不会报错。
public class TestThread
{
public static void main(String[] args)
{
AThread t = new AThread();
t.start();
System.out.println("没有编译运行异常");// 输出:没有编译运行异常
}
}
class AThread extends Thread //Thread类已经实现了空的run()方法。
{
//代码
}
第二种情况:通过Runnable接口实现线程,没有run()方法,编译会出现异常。原因是通过接口实现,该类必须重写Runnable接口中的抽象方法run()方法。
public class TestRunnable
{
public static void main(String[] args)
{
AThread t = new AThread();
Thread t1= new Thread(t);
t1.start();
System.out.println("编译运行没有错");
}
}
class AThread implements Runnable
{
public void run() //必须有此方法否则编译报错。它是Runnable接口中的抽象方法。
{
System.out.println(”run()方法”);
}
}
相关文章推荐
- List的All方法使用问题:我用List1的All方法来确保List1的所有每个数组元素中是否包含Arr1中的任意元素,这个部分很难实现。 因为,没有一个数组中是否包含另一个数组中的任意元素这个功能
- Hystrix的一个坑,queue中的run方法没有被执行?
- 判断一个activity初始化是否完毕的方法
- 在一个程序中需要用到全局变量(在多个class之间共享数据),请问如何定义具有这种功能的变量?或者是否有其他的方法解决多个class之间的数据共享(尽量简单实现)。 首先应该明确 Java中没有全局变
- sql server 中有没有判断是否为integer的方法
- 用callback机制使线程的run()方法返回一个值[java net programming这本书中的思想]
- 在页面没有完全加载完毕前调用Ajax方法会出错
- 在页面没有完全加载完毕前调用Ajax方法会出错
- 如何测试一个没有返回值的方法
- [转]IE点击链接没有反应或打开新窗口出现一个空白框(地址栏空白)的解决方法
- 一个判断点是否在三角形内的简单方法
- 判断一个access数据库中某个表是否存在的方法
- .net C# 如何判断一个对象是否具有某个方法
- 判断一个字符串是否全是数字的多种方法及其性能比较(C#实现)
- 检测一个文件是否为文本文件/二进制文件的方法
- 一个判断点是否在三角形内的简单方法
- 判断一个字符串是否全是数字的多种方法及其性能比较
- 判断字符是否为汉字的一个方法
- 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
- 判断比较两个对象是否是一个对象(equals方法)