我是否可以在类上放置自定义注释,然后强制开发人员将注释放在方法上?
假设我有三个自定义注释
当我在课堂上添加 @Loggble 注释时,它强制开发人员通过 @MySQLLoggable 或 @CassandraLoggable 来注释其所有方法。
更新我!
EDITED
@Loggable // Suppose I put this annotation on class
public class Service {
@MySQLLoggable //eclipse forceful the developer
//to put @MySQLLoggable or @CassandraLoggable on sayHello()
public String sayHello() {
return null;
}
}
答案 0 :(得分:0)
使用@interface
public @interface foo {
String str();
}
@foo(str = "str")
public class myClass{
}
修改
public @interface loggable {
@loggable1(method) @loggable2(method))
String foo();
}
答案 1 :(得分:0)
很抱歉,如果您希望IDE让开发人员使用您的自定义注释,那么您最好阅读IDE规范和可能的自定义。如果您希望稍后在执行期间,如果没有注释方法,则应用程序将抛出异常,然后您必须使用反射。让我们保存您使用工厂模式来创建对象。因此,在创建它们之前,您可以检查是否所有方法都已注释,如果不是全部,则抛出异常。我再次相信你必须使用反思..这只是一种方式!