Sample.this.display()和this.display()哪个更好?
class Sample{
void display(){
System.out.println("display() called");
}
void callDisplay(){
Sample.this.display(); // 1
this.display(); // 2
}
public static void main(String args[]){
Sample s = new Sample();
s.callDisplay();
}
}你能解释一下difference?
有什么特殊的含义/目的吗?
发布于 2012-01-03 06:24:53
您可以像Sample.this.display()一样使用类名的原因是,当您在一个内部类中并且希望引用一个封闭类的this时。在所提供的示例中,这没有任何区别。
发布于 2012-01-03 06:23:59
我会去3
void callDisplay(){
display(); // 3
}不要认为有真正的区别,但是所有额外的--这和Sample.this --只添加不需要的代码,所以我根本不会使用它们
不像
private String something;
void setSomthing(String something){
this.something = something;
}在绝对需要的地方
发布于 2012-01-03 06:25:34
你是从同一个班级打来的,你不需要两者兼得。简单的显示()就足够了。
https://stackoverflow.com/questions/8708633
复制相似问题