我正在看一些Java的游戏开发教程,我必须使用线程,有一个“这个”的东西Thread thread = new Thread(this);我无法理解,我正在通过"Runnable“实现我的类。我的想法是,"this“指的是Runnable来寻找我在类中定义的Run方法。如果我不这样做,它就不会在我的类中查找Run()方法。不知道是不是真的错了,但是如果我错了,请纠正我……
发布于 2014-02-17 06:31:14
this是一个指向当前实例的pseudo-variable,它指向正在执行方法的对象本身。举个例子:
public class Person {
    private String name;
    public void setName(pName) {
        this.name = pName
    }
}
Person p = new Person();
p.setName("Peter");在上面的代码中,我们将新的name "Peter"赋值给这个person p,即Person类的当前实例。换句话说,从p的角度来看,this指向了p。
发布于 2014-02-17 06:37:41
@Óscar López解释了this是什么意思。
如果您的代码包含以下内容:
    Thread thread = new Thread(this);然后this引用包含该语句的类的实例。此外,它是运行代码的实例。此外,该Thread构造函数的API规范意味着this需要是实现Runnable的类的实例。
简而言之,您的类需要声明为implements Runnable,并且它需要有一个具有此签名的方法:
    public void run() https://stackoverflow.com/questions/21817600
复制相似问题