Java-强制实现接口的类声明注释
我试图强制类SomeImpl在实现接口SomeInterface时声明注释@SomeAnnotation。解决方案可以修改接口声明Java-强制实现接口的类声明注释,java,annotations,java-annotations,Java,Annotations,Java Annotations,我试图强制类SomeImpl在实现接口SomeInterface时声明注释@SomeAnnotation。解决方案可以修改接口声明 public interface SomeInterface {} public class SomeImpl implements SomeInterface -> compilation error @SomeAnnotation public class SomeInterfaceImpl implements SomeInterface ->
public interface SomeInterface {}
public class SomeImpl implements SomeInterface -> compilation error
@SomeAnnotation
public class SomeInterfaceImpl implements SomeInterface -> compilation ok
用例:我在一个方法中使用对象实现SomeInterface(不是我写的,它是一个外部库),该方法总是读取@SomeAnnotation的注释,并且它不能为空或默认值
谢谢 这似乎只能使用annotations processor()完成。您之所以要这样做,是因为…用例是什么?您试图解决什么问题?用例:我使用的对象在一个方法中实现SomeInterface(不是我写的,它是一个外部库),该方法总是读取注释@SomeAnnotation,它不能为空或默认值。我现在提出这个问题。所以写一个代码分析工具来扫描你的代码,寻找这种组合。Java本身无法强制执行您的约束。编写适当的测试,这是唯一的方法。