0
有什麼方法可以驗證Java中的註釋有效性嗎?Java中的註釋(參數)驗證?
例如,我可以有一個註釋
public @interface Foo {
int number();
String name();
}
public @interface Foos {
Foo[] value();
/* Foos() {
for(int i=0; i<value().length; ++i) {
if(i != value()[i].number()) {
throw new IllegalArgumentException();
}
}
} */
}
我能約束numbers
是從零開始,不斷去?
(例如上面我寫的註釋註釋構造此項檢查)
UPDATE
註釋使用的一些樣本:
// correctly annotated class
@Foos({@Foo(number=0, name="first"), @Foo(number=1,name="second")})
class MyCorrectAnnotatedClass {
}
// incorrectly annotated class 1
// number starts from 1 not form 0
@Foos({@Foo(number=1, name="first"), @Foo(number=2,name="second")})
class MyIncorrectAnnotatedClass1 {
}
// incorrectly annotated class 2
// number sequence has missed 1
@Foos({@Foo(number=0, name="first"), @Foo(number=2,name="second")})
class MyIncorrectAnnotatedClass2 {
}
雖然我的意思是你認爲不同的事情,但從你的回答來看,可能是因爲答案是「不可能的」。請參閱我的更新:我的意思是檢查每個單一用法的註釋完整性,而不是所有用法。由於註釋設計爲獨立實體,後者的願望將是非法的。 –