[英]Simple question about Inheritance in Java
我有一个关于 inheritance 的问题。 如果我想从子 class 中的父 class 调用方法,我应该使用 super.method() 还是 this.method()? 在我正在编程的程序中,它们都可以工作,所以我同时使用它们,但我并不认为这是正确的方法。
例如,假设我有一个名为“Vehicle”的 class 和另一个我们称之为“Airplane”的。 假设我在 Vehicle 中有一个 brand() 方法。 我应该使用 this.brand() 还是 super.brand()?
先感谢您。
考虑这个代码片段,
class Vehicle {
public void brand(){
System.out.println("This is a vehicle");
}
}
class Airplane extends Vehicle {
public void brand() {
System.out.println("This is an airplane");
}
public void anotherMethodInAirplane() {
this.brand();
super.brand();
}
}
public class Main {
public static void main(String[] args) {
Airplane airplane = new Airplane();
airplane.anotherMethodInAirplane();
}
}
如果您要执行此操作,您会看到 this.brand() 首先打印“这是一架飞机”,然后 super.brand() 打印“这是一辆汽车”。
所以,
希望这对您有所帮助,如果您有任何后续问题。 请 go 在前面,如果这个答案对你有帮助。 如果您将此答案标记为“已接受”,我将非常感激:祝您有美好的一天:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.