Runnable是Java中定义线程任务的基础接口,仅包含无参无返回值的run()方法;直接调用run()不会开启新线程,必须通过new Thread(runnable).start()启动;相比继承Thread类,使用Runnable可避免单继承限制、实现任务复用并适配线程池;可通过实现类、匿名内部类或Lambda表达式创建实例,其中Runnable代表“要做什么”,Thread负责“执行任务”,二者需结合使用。
Runnable 是 Java 中用来定义线程任务的最基础接口,它本身不创建线程,也不管理线程生命周期,只负责“告诉线程该干什么”。
这个方法没有参数、没有返回值、不抛异常:

核心是解耦和灵活性:
本质都是提供一个 run() 的实现,再塞进 Thread 启动:
这点容易混淆:
基本上就这些。它简单、轻量、通用,是 Java 多线程编程的起点。