您的位置:首页 > 编程语言 > Java开发

java继承中的this用法

2016-03-17 23:31 459 查看
先看代码
package this_test;

public class Parent {
public int i;
public void print(){
System.out.println("parent");
}
public void my_print(){
this.print();  <span style="font-family: Arial, Helvetica, sans-serif;">//区别</span>
System.out.println("i="+i);
}
}
Child.java

package this_test;

public class Child extends Parent{
@Override
public void print(){
System.out.println("child");
}
}


Main.java

package this_test;

public class Main {
public static void main(String []args){
new Child().my_print();
}
}


运行结果:

child

i=0

然后做一下修改

package this_test;

public class Parent {
public int i;
public void print(){
System.out.println("parent");
}
public void my_print(){
print();   //区别
System.out.println("i="+i);
}
}


运行结果:

child

i=0

按照《java编程思想》,编译器会“偷偷的”将this关键字传入进去,所以在设计继承时,要特别注意。

“this关键字只能在方法内部使用,表示对调用方法的那个对象的引用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: