gpt4 book ai didi

java - 我怎样才能确定某些 java 类/接口(interface)在程序级别的存在?

转载 作者:行者123 更新时间:2023-11-30 11:08:38 24 4
gpt4 key购买 nike

我正在为我的项目使用简单的策略模式。我需要在某些枚举中添加每个具体的策略接口(interface)类以备后用。为方便起见,我使用了一个临时接口(interface),该接口(interface)应在以后替换,而不是先实现每个具体类来完成设计。

这是我试过的简单代码。

public interface Strategy{
public void execute();
}

public interface NeedToImplement extends Strategy {

}

public enum strategyInfo {
A(ConcreteStrategyA.class, "blah blah" ),
B(ConcreteStrategyB.class, "blah~~" ),
C(NeedToImplement.class, "blah~~");
}

到目前为止,如果我是唯一管理此代码的人并且不要忘记实现每个类,那么代码本身将不是问题。但这是团队工作,我会为我的团队成员拆分每个实现,因此,如果我们的任何团队成员忘记实现任何类,即使在运行时也会造成灾难。

我想确保在我通过异常或错误运行程序时,如果 NeedToImplement 存在(就像我可以从 @Deprecated 得到警告)虽然我仍然可以在没有任何代码编译错误的情况下进行编译。

我想到的第一个想法是为 NeedToImplement 接口(interface)使用自定义注释。但实际上我不确定更多细节。如果我的想法是正确的,请详细说明。如果没有,任何比 Ctrl+F 更好的建议也将不胜感激。

最佳答案

你可以做的是:

  1. JavaDoc 中使用 @Depreceated 标记标记您的临时接口(interface).您还可以提供有关开发人员应该使用什么/何时使用的信息。

  2. 检查接口(interface)是否存在的另一件事是使用诸如 JUnit 之类的东西连接一个简单的单元测试。这将在您的代码编译时运行。大多数编译工具,例如 ANT 或 Maven,应该允许您在编译周期结束时附加测试脚本。如果测试失败,那么,您的临时界面仍然存在。

关于java - 我怎样才能确定某些 java 类/接口(interface)在程序级别的存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28472133/

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