【发布时间】:2018-08-09 20:13:47
【问题描述】:
如果它正在实现接口 SomeInterface,我正在尝试强制类 SomeImpl 声明注释 @SomeAnnotation。解决方案可以修改 SomeInterface 声明。
public interface SomeInterface {}
public class SomeImpl implements SomeInterface -> compilation error
@SomeAnnotation
public class SomeInterfaceImpl implements SomeInterface -> compilation ok
用例:我在一个方法(不是我写的,它是一个外部库)中使用实现 SomeInterface 的对象,该方法总是读取注解 @SomeAnnotation 并且它不能为空或默认值。
谢谢!
【问题讨论】:
-
你想这样做是因为...
-
用例是什么?你想解决什么问题?
-
用例:我在一个方法(不是我写的,它是一个外部库)中使用实现 SomeInterface 的对象,它总是读取注释 @SomeAnnotation 并且它不能为空或默认值。我现在把它放在问题中。
-
因此编写一个代码分析工具来扫描您的代码以查找该组合。 Java 本身不能强制你是约束。
-
编写正确的测试,这是唯一的方法。
标签: java annotations java-annotations