gpt4 book ai didi

Java 继承或静态方法

转载 作者:行者123 更新时间:2023-12-02 14:05:29 24 4
gpt4 key购买 nike

有一个名为 AbstractAgent 的抽象类,目前有 27 个类正在扩展该类。

我已经开始开发一些代理,我的所有 5 个代理都在扩展 AbstractAgent 类。

现在我发现有一个 getFilePath(),我正在将其复制粘贴到我的所有 5 个代理中。后来我发现现有的27个类(class)中也有很多类(class)有这个方法。我认为将此方法放在基类 AbstractAgent 中并让每个人都使用该方法是一个好主意。但我不希望所有现有的类更改其代码,我更改了方法名称,以便以后任何人都可以使用它。

对我进行代码审查的人建议我不要碰 AbstractAgent 类,因为它已经被现有客户端使用,并且将此方法放在某个实用程序类中。

我不相信他的论点。任何人都想表达自己的想法。

最佳答案

在这种情况下,因为 AbstractAgent 类已被其他类使用,并且正如您自己提到的,并非所有类都实现了此方法,那么您确实不应该更改AbstractAgent。但是,您可以在另一个名为 AbstractAgentWithFilePath 的抽象子类中扩展 AbstractAgent,该子类声明您想要的附加方法,然后让这些类扩展 AbstractAgentWithFilePath类代替。

关于Java 继承或静态方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9607125/

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