在一个简单易懂的解释中,Java中的Runnable是什么?
用通俗的话来说,Java中的“runnable”是什么? 我是高中的AP编程学生,他的任务是做研究,或者从别人那里寻找“runnable”(我们正在进入OOP,还没有触及线程)。
一个Runnable基本上是一个类(Runnable是一个接口),可以放入一个线程,描述线程应该做什么。
 Runnable接口要求类实现run()方法,如下所示: 
 public class MyRunnableTask implements Runnable { public void run() { // do stuff here } } 
然后像这样使用它:
 Thread t = new Thread(new MyRunnableTask()); t.start(); 
 如果你没有Runnable接口,负责在另一个线程中执行你的东西的Thread类将没有承诺在你的类中findrun()方法,所以你可能会遇到错误。 这就是为什么你需要实现接口。 
高级:匿名types
请注意,您不需要像往常一样定义类,您可以执行所有内联操作:
 Thread t = new Thread(new Runnable() { public void run() { // stuff here } }); t.start(); 
这与上面类似,只有你不创build另一个命名类。
  Runnable是一个定义如下的接口: 
 interface Runnable { public void run(); } 
 要创build一个使用它的类,只需将类定义为(public) class MyRunnable implements Runnable { 
它甚至可以使用,甚至没有一个新的线程。 它基本上是一个单一的方法的基本接口,运行,可以调用。
如果使用runnable创build一个新的线程作为参数,它将在新线程中调用run方法。
 还应该注意的是,线程实现了Runnable ,并且在新线程(在新线程中)时被调用。 默认实现只是调用您在构造函数中递交的任何Runnable,这就是为什么您可以在不重写Thread的run方法的情况下执行new Thread(someRunnable) 。