Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 我需要更好地理解组成和继承_Oop_Inheritance_Polymorphism_Composition - Fatal编程技术网

Oop 我需要更好地理解组成和继承

Oop 我需要更好地理解组成和继承,oop,inheritance,polymorphism,composition,Oop,Inheritance,Polymorphism,Composition,我有一个超级棒球运动员 我有一个左外野,中外野,右外野,3b,ss,2b,1b,接球手,投手,都是从球员那里继承来的 那么,让我们以投手为例。投手职业是否也是从棒球运动员那里继承下来的超级职业?从投手和棒球运动员的职业中继承下来的先发球员、替补球员、替补球员、替补球员和替补球员的职业 我的投手阿森纳会是一个界面吗?例如,快球、曲球、滑球、换球 假设我们有一个叫诺兰的投手的新例子,诺兰的快球会是一个“组合”,因为诺兰的快球依赖于诺兰,或者换句话说,或者没有他就不存在 我一直在写作文。有人能按照棒球

我有一个超级棒球运动员

我有一个左外野,中外野,右外野,3b,ss,2b,1b,接球手,投手,都是从球员那里继承来的

那么,让我们以投手为例。投手职业是否也是从棒球运动员那里继承下来的超级职业?从投手和棒球运动员的职业中继承下来的先发球员、替补球员、替补球员、替补球员和替补球员的职业

我的投手阿森纳会是一个界面吗?例如,快球、曲球、滑球、换球

假设我们有一个叫诺兰的投手的新例子,诺兰的快球会是一个“组合”,因为诺兰的快球依赖于诺兰,或者换句话说,或者没有他就不存在


我一直在写作文。有人能按照棒球的比喻来解释一下吗?

简单地说,继承是一种“是-是”关系,而作文是一种“有-有”关系


投手是棒球运动员,因此投手将继承棒球运动员的遗产。此外,一个投手有一大堆投球,因此可以定义为组合,尽管如果投手使用不同的投球,聚合可能更合适,因为聚合包括列表。

这个例子有点奇怪,不是每个人都知道棒球……你可能会考虑给这本书读一读:谢谢Nick。我正在调查。我的后续问题是,诺兰必须拥有阿森纳的所有权吗?比如,诺兰97英里/小时的快球,而不是普通的91英里/小时的快球?我的意思是这样的,就像他在投球一样。这有意义吗?诺兰将拥有与所有投手无关的特定信息,因此他很可能通过组合或聚合拥有一个快速球。谢谢你,我感谢你的帮助。所以,如果某个东西在它的创造者死后可以存在,那将是一种聚合形式?如果它和造物主一起死了,那就是合成?请原谅我,我想我已经接近理解了。因为诺兰投出了一个快球(即使是他的快球),这个快球在没有诺兰或阿卡的情况下仍然可以存在。对吗?或者是因为在他投出快球后,他的快球停止了存在,这是一种组合?如果一个快球是一个类,那么诺兰将拥有该类的一个实例,当他投出快球时,该类实例将死亡。合成和聚合之间的唯一区别在于,合成意味着每个父项有一个项目,而聚合意味着每个父项有多个项目。@KendallFrey合成与聚合的示例。投手戴着(合成)棒球手套,但他也有可能投出的球的集合。希望有帮助。