首页 > 试题广场 >

创建线程有几种不同的方式?你喜欢哪一种?为什么?

[问答题]
创建线程有几种不同的方式?你喜欢哪一种?为什么?
1.继承 Thread 类
2.实现 Runnable 接口
3.实现Callable
 喜欢2 :
因为Runnable 接口这种方式更受欢迎,因为这不需要继承 Thread 类。
发表于 2019-04-25 20:04:38 回复(0)
一般我们玩线程有如下的几种方式:
1)继承Thread类
2)实现Runnable接口
3)实现Callable【此种方式存在返回值】
还有就是采取线程池的方式利用线程池的threadFactory来产生线程。
这边有一个经常考的点就是start和run方法哪个是创建哪个是启动。
另外的频率比较大的考点是线程ABC三个线程依次执行的方式:
我这边提供俩个:
1)采取join方法,join方式是让主线程等待子线程执行完之后才能执行
所以start join start join的写法可以让线程依次执行
2)第二种方式比较少谈到,就是单线程的线程池newSingleThreadExecutor
发表于 2019-04-04 10:17:26 回复(0)
1.继承 Thread 类 2.实现 Runnable 接口 3.实现Callable  喜欢2 : 因为Runnable 接口这种方式更受欢迎,因为这不需要继承 Thread 类。
发表于 2019-05-05 15:21:18 回复(0)
1.继承 Thread 类 2.实现 Runnable 接口 3.实现Callable  喜欢2 : 因为Runnable 接口这种方式更受欢迎,因为这不需要继承 Thread 类。
发表于 2019-05-01 21:34:54 回复(0)
1.继承Thread类 2.实现Runnable接口 3.使用Executor框架创建线程池
发表于 2019-04-27 16:22:36 回复(0)
链接:https://www.nowcoder.com/questionTerminal/e21d45ab9aa446bdb69119680aa7dbfc?orderByHotValue=1&questionTypes=000010&mutiTagIds=639_570&page=1&onlyReference=false
来源:牛客网
1.继承Thread类
2.实现Runnable接口
3.使用Executor框架创建线程池
推荐使用第二种,因为第二种可以避免点继承的局限,一个类可以继承多个接口。
发表于 2019-04-25 22:50:07 回复(0)
1.继承Thread类,是Runnable接口的实现。
2.实现Runnable接口,并重写里面的run方法。
3.使用Executor框架创建线程池。
个人偏向于第二种,因为第二种可以避免点继承的局限,一个类可以继承多个接口,而且适合于资源的共享

发表于 2019-04-25 21:13:38 回复(0)
继承 Thread 类 实现 Runnable 接口 应用程序可以使用 Executor 框架来创建线程池 实现 Runnable 接口这种方式更受欢迎,因为这不需要继承 Thread 类。在应用设计中已经继 承了别的对象的情况下,这需要多继承(而 Java 不支持多继承),只能实现接口。同时,线 程池也是非常高效的,很容易实现和使用。
发表于 2019-04-25 19:03:49 回复(0)
继承Thread类
实现Runnable接口
更倾向于第二种:
实现Runnable接口这种方式更受欢迎,因为这不需要继承Thread类。在应用设计中已经继承了别的对象的情况下,这需要多继承(而Java不支持多继承),只能实现接口。同时,线程池也是非常高效的,很容易实现和使用
发表于 2019-04-25 18:24:47 回复(0)
第一种继承thread类,第二种实现runnable接口
发表于 2019-03-30 14:37:47 回复(2)