runnable 和 thread 有什么区别
时间: 2023-08-18 20:08:10 浏览: 92
多线程的Runnable_和thread有什么区别
4星 · 用户满意度95%
`Runnable` 和 `Thread` 都是 Java 多线程编程中的概念,它们之间有以下区别:
1. `Runnable` 是一个接口,而 `Thread` 是一个类;
2. `Runnable` 只有一个 `run` 方法,需要在 `Thread` 中实例化并传入 `Thread` 构造函数中,而 `Thread` 可以直接调用 `start` 方法启动线程;
3. 通过实现 `Runnable` 接口,可以避免由于 Java 的单继承限制而无法继承其他类;
4. 一个类可以实现多个 `Runnable` 接口,但是一个线程只能继承一个 `Thread` 类。
在实际开发中,`Runnable` 更加常用,因为它可以让代码更加灵活、可扩展,而且可以避免一些潜在的问题(如多继承、资源竞争等)。
阅读全文