gpt4 book ai didi

oop - 多态性的真正意义(用途)是什么

转载 作者:行者123 更新时间:2023-12-03 10:21:16 30 4
gpt4 key购买 nike

我是 OOP 的新手。虽然我了解多态是什么,但我无法真正使用它。我可以有不同名称的函数。为什么我应该尝试在我的应用程序中实现多态性。

最佳答案

在严格类型化的语言中,多态性对于拥有不同类型对象的列表/集合/数组很重要。这是因为列表/数组本身的类型是只包含正确类型的对象。

例如,想象一下我们有以下内容:

// the following is pseudocode M'kay:
class apple;
class banana;
class kitchenKnife;

apple foo;
banana bar;
kitchenKnife bat;

apple *shoppingList = [foo, bar, bat]; // this is illegal because bar and bat is
// not of type apple.

要解决这个问题:
class groceries;
class apple inherits groceries;
class banana inherits groceries;
class kitchenKnife inherits groceries;

apple foo;
banana bar;
kitchenKnife bat;

groceries *shoppingList = [foo, bar, bat]; // this is OK

它还使处理项目列表更加直接。比如说所有的杂货都实现了方法 price() ,处理这很容易:
int total = 0;
foreach (item in shoppingList) {
total += item.price();
}

这两个特征是多态性的核心。

关于oop - 多态性的真正意义(用途)是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2080020/

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