关键词有什么区别this
and super
?
两者都用于访问类的构造函数,对吗?你们谁能解释一下吗?
让我们考虑一下这种情况
class Animal {
void eat() {
System.out.println("animal : eat");
}
}
class Dog extends Animal {
void eat() {
System.out.println("dog : eat");
}
void anotherEat() {
super.eat();
}
}
public class Test {
public static void main(String[] args) {
Animal a = new Animal();
a.eat();
Dog d = new Dog();
d.eat();
d.anotherEat();
}
}
输出将是
animal : eat
dog : eat
animal : eat
第三行打印“animal:eat”,因为我们正在调用super.eat()
。如果我们打电话this.eat()
,它会打印为“dog:eat”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)