gpt4 book ai didi

language-agnostic - 抽象类中的空方法

转载 作者:行者123 更新时间:2023-12-03 07:32:34 25 4
gpt4 key购买 nike

我刚刚安装了 PMD 来分析我的 Java 项目。非常好的工具,强烈推荐。
无论如何,我有一些错误说:

"An empty method in an abstract class should be abstract instead"



我查看了 PMD 文档,解释说:

as developer may rely on this empty implementation rather than code the appropriate one



所以我想我理解这种代码风格错误背后的原因,但请考虑以下场景:我有一个名为 Entity 的抽象类。这个类有一个默认实现的 bool 方法。 (控制是否在删除时删除其相关实体)。只有少数派生类将此默认行为覆盖为 true。

我应该删除默认实现并强制所有派生类声明它们的行为吗?
你真的认为这种模式是一种糟糕的做法吗?

澄清: PMD 将具有单个 return 语句的方法视为空。

最佳答案

我认为这只是一个指导方针。它告诉你,你可能想要重新考虑你的设计,但如果你的设计已经非常合理,那么没有理由服从软件而不是你的大脑。

关于language-agnostic - 抽象类中的空方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/755566/

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