首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sample.this.display()和this.display()之间的区别

Sample.this.display()和this.display()之间的区别
EN

Stack Overflow用户
提问于 2012-01-03 06:19:57
回答 3查看 227关注 0票数 0

Sample.this.display()和this.display()哪个更好?

代码语言:javascript
复制
 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?

  • Which是更好的选择吗?

  • 对Sample.this.display()?

有什么特殊的含义/目的吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-03 06:24:53

您可以像Sample.this.display()一样使用类名的原因是,当您在一个内部类中并且希望引用一个封闭类的this时。在所提供的示例中,这没有任何区别。

票数 4
EN

Stack Overflow用户

发布于 2012-01-03 06:23:59

我会去3

代码语言:javascript
复制
 void callDisplay(){
  display();  // 3  
 }

不要认为有真正的区别,但是所有额外的--这和Sample.this --只添加不需要的代码,所以我根本不会使用它们

不像

代码语言:javascript
复制
 private String something;
 void setSomthing(String something){
     this.something = something;
 }

在绝对需要的地方

票数 0
EN

Stack Overflow用户

发布于 2012-01-03 06:25:34

你是从同一个班级打来的,你不需要两者兼得。简单的显示()就足够了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8708633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档