我有一个如下所示的 Java 程序。
public class LocalScreen {
public void onMake() {
aFuncCall(LocalScreen.this, oneString, twoString);
}
}
LocalScreen.this
在 aFuncCall
中意味着什么?
最佳答案
LocalScreen.this
引用封闭类的 this
。
这个例子应该解释它:
public class LocalScreen {
public void method() {
new Runnable() {
public void run() {
// Prints "An anonymous Runnable"
System.out.println(this.toString());
// Prints "A LocalScreen object"
System.out.println(LocalScreen.this.toString());
// Won't compile! 'this' is a Runnable!
onMake(this);
// Compiles! Refers to enclosing object
onMake(LocalScreen.this);
}
public String toString() {
return "An anonymous Runnable!";
}
}.run();
}
public String toString() { return "A LocalScreen object"; }
public void onMake(LocalScreen ls) { /* ... */ }
public static void main(String[] args) {
new LocalScreen().method();
}
}
输出:
An anonymous Runnable!
A LocalScreen object
<小时/>
这篇文章已被重写为文章here .
关于Java:类.this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59482705/