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