在Java 8中,我们可以使用注释标记数组的单独维度 (参见JLS 8第10.2节)。 例如,
int @a[] a;
int @a[] @b[] a;
void someMethod(int @a[] @b... y) {}
然后我们可以用Java Reflection解析这些声明来实现一些特定的逻辑。
您是否了解此功能在实际Java框架或Java库中的任何实际应用?
答案 0 :(得分:1)
这种注释放置可能有用的示例是Checker Framework。
它可以用来创建可变/不可变或(非)可空行 - 基本上你可能想用整个数组注释,但只能用于单行。
Object @NonNull [] @Nullable [] a;
除此之外,它可以用于文档,例如解释每个维度目的的注释。