`
只帅一次
  • 浏览: 32502 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java编程思想练习题-第5章练习8-this实现细节详解

阅读更多

题目:编写具有两个方法的类,在第一个方法内调用第二个方法两次:第一次调用不使用this关键字,第二次使用this关键字(验证this关键字起作用)

 

分析:为什么可以使用this关键字呢?那是因为编译器的“暗箱操作”,举例来说:

假设我们有Banana这样一个类,里面有peel这样一个方法,我们这样创建实例并且使用它。

Banana a=new Banana();
a.peel(1);

 但是编译器真实的做了什么呢?

Banana.peel(a,1);

 它暗自把操作对象的引用作为第一个参数传给了方法peel。并且设了一个专门的关键字this,用this表示调用这个方法的那个对象。

但是需要注意的是如果在方法内部调用同一个类的另一个方法,不需要使用this直接调用即可。

我们在构造器里面经常发现这样的代码

this.test=test;

 那是因为构造器参数和类的域重名了,必须使用this来告诉编译器使用的是哪一个。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics