Java 在对象中运行方法
冲浪的时候,我经历了一件让我困惑的事情Java 在对象中运行方法,java,multithreading,Java,Multithreading,冲浪的时候,我经历了一件让我困惑的事情 Thread x=new Thread() { void run() { //some code } }; 我想知道我们如何直接使用run方法来制作这个对象,这样做的好处是什么,我们可以用任何对象定义任何方法,或者我们必须重写一个方法,我只是对这里发生的事情感到困惑。请帮我解决一下这是一个匿名线程类 您已经在创建Thread类的一个实例,只是没有对它做任何操作。您可以调用start(),甚至不使用局部变量: Thread x = new T
Thread x=new Thread()
{
void run()
{
//some code
}
};
我想知道我们如何直接使用run方法来制作这个对象,这样做的好处是什么,我们可以用任何对象定义任何方法,或者我们必须重写一个方法,我只是对这里发生的事情感到困惑。请帮我解决一下这是一个匿名线程类 您已经在创建Thread类的一个实例,只是没有对它做任何操作。您可以调用
start()
,甚至不使用局部变量:
Thread x = new Thread() {
public void run() {
System.out.println("something");
}
};
x.start();
有关“基于现有类创建匿名实例”的更多信息,请仔细阅读此问题。基本上,您创建了一个Thread类型的新对象实例,并且还重写了(在这种情况下)run()方法。优点是不必在新文件中声明新类。这是一种获取实例并当场修改(覆盖)的快速方法。但是,您不能像使用普通类(扩展线程)那样重用此实例模板。它是一个匿名线程类