gpt4 book ai didi

java - Java中 "this"和“super”关键字的区别

转载 作者:IT老高 更新时间:2023-10-28 20:31:43 26 4
gpt4 key购买 nike

关键字thissuper有什么区别?

两者都用于访问类的构造函数,对吧?谁能解释一下?

最佳答案

让我们考虑一下这种情况

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”。

关于java - Java中 "this"和“super”关键字的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4023344/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com