gpt4 book ai didi

java - 除了减少冗余代码之外,继承的最佳用途是什么?

转载 作者:行者123 更新时间:2023-11-29 09:18:01 24 4
gpt4 key购买 nike

继承的最佳用途是什么,除了它会减少冗余代码!
让我们举个例子
A类:基类
B类:子类
和 C 类。

 CLASS A
^
| And CLASS C
|
|
CLASS B

我可以通过继承在 B 类中使用 A 类中的方法。
同样,我可以在 C 类中使用 A 类中的方法,
通过创建 A 类的实例。(假设 A 是公共(public)的)
使用继承,只减少创建新对象/实例?
请帮助我更好地理解!

最佳答案

一个很大的好处是多态性。如果类 B 和 C 都继承自 A,那么只要需要 A 类型的对象,就可以用 B 类型的对象或 C 类型的对象替换它。假设在 B 和 C 中重写了相应的方法,这根据您传递的对象获得不同的行为非常方便。

例子:

class A {
public void foo() { System.out.println("A"); }
}

class B extends A {
public void foo() { System.out.println("B"); }
}

class C extends A {
public void foo() { System.out.println("C"); }
}

然后:

public static void printMessage(A obj) {
obj.foo();
}

public static void main(String[] args) {
A b = new B();
printMessage(b); // prints 'B'
A c = new C();
printMessage(c); // prints 'C'
}

关于java - 除了减少冗余代码之外,继承的最佳用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8293836/

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