在Java中是否有一种方法只允许一种类型作为属性?

在Java中是否有一种方法只允许一种类型作为属性?,java,types,static,attributes,Java,Types,Static,Attributes,我有一个类,在这个类中,我只需要dype对的多个静态属性。不多了。是否有一种方法可以定义一个超类或其他无法添加另一个变量属性的方法 重要的是我有多个属性,而不是列表或枚举 例如: public class Test { public static final Pair<Integer, String> a ... public static final Pair<Integer, String> b ... public static final Pai

我有一个类,在这个类中,我只需要dype
对的多个静态属性。不多了。是否有一种方法可以定义一个超类或其他无法添加另一个变量属性的方法

重要的是我有多个属性,而不是列表或枚举

例如:

public class Test {

  public static final Pair<Integer, String> a ...

  public static final Pair<Integer, String> b ...

  public static final Pair<Integer, String> c ...

}
公共类测试{
公共静态最后一对a。。。
公共静态最后一对b。。。
公共静态最后一对c。。。
}

不可能通过创建超类或超接口来限制任何给定类可能声明的静态字段。唯一可以做到这一点的是注释处理器(即使您不使用注释)。但是,没有办法强制执行编译人员运行该处理器

如果你对此感兴趣:这并不容易,解释如何做到这一点将超出一个SO问题的合理范围一个数量级。在web上搜索有关注释处理器的教程