gpt4 book ai didi

java - 延伸无关系

转载 作者:行者123 更新时间:2023-12-02 04:27:02 25 4
gpt4 key购买 nike

我有 2 门课,就叫它 CustomerStuff , Customer具有属性(Id、Name、Address 以及 getter 和 setter)和 Stuff类有(Id、Name、Stock 以及 getter 和 setter)。基于这些类属性,CustomerStuff类有2个类似的属性和方法(Id,name,getId(),getName()和setId(参数),setName(参数))。因此,我创建一个抽象类作为基类,其中包含(Id、Name、getter 和 setter),只需将其命名为 myBaseClass ,所以我只需要将 myBaseClass 扩展到我的 CustomerStuff类而不是在每个类中编写(Id、Name、getter 和 setter)属性。

我以为我创建的内容没有问题,直到我的 friend 告诉我我的类不应该使用继承,只需写 attribute and method(Id,Name)在每个 Customer 和 Stuff 类上,因为 Customer 和 Stuff 类没有像 Animal 和 Tiger 那样的关系,因为 Tiger 是一种动物。

我应该继续使用继承还是只是为 (Id, name,getter and setter) 输入更多内容在每个客户和元素类别中?

最佳答案

对此没有“正确”答案。

继承可能很脆弱,在面向对象的世界中,您应该更喜欢组合而不是继承。我同意你 friend 的观点,即这两个类是独立的,不应共享继承层次结构。

但是,如果您在某些时候以类似的方式对待它们,则可以在需要时实现可重用的接口(interface)。

但是在这种情况下 - 除非有业务需要,否则我不会将这些类结合在一起。

关于java - 延伸无关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32015565/

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