Java泛型类型具有特定注释

Java泛型类型具有特定注释,java,generics,Java,Generics,我有一个类,它应该有一个类型化参数。我是否可以确保类型应有特定的注释?下面是我努力实现的目标。但它不起作用。是否有其他方法可以强制类型具有特定注释?Java的版本是1.6 abstract class Test<T extends javax.xml.bind.annotation.XmlRootElement>{ public abstract T unmarshall(); } @XmlRootElement(name = "user", namespace = "ab

我有一个类,它应该有一个类型化参数。我是否可以确保
类型
应有特定的注释?下面是我努力实现的目标。但它不起作用。是否有其他方法可以强制
类型
具有特定注释?Java的版本是1.6

abstract class Test<T extends javax.xml.bind.annotation.XmlRootElement>{
    public abstract T unmarshall();
}

@XmlRootElement(name = "user", namespace = "abc.com")
class User{
    //Some fields
}

class Test extends Test<User>{
    public User unmarshall(){
        //unarshall
    }
}
抽象类测试{
公开摘要T unmarshall();
}
@XmlRootElement(name=“user”,namespace=“abc.com”)
类用户{
//一些领域
}
类测试扩展了类测试{
公共用户解组(){
//乌纳斯霍尔
}
}

在普通JAVA中无法做到这一点。但使用AspectJ,我认为您可以做到这一点(至少在几年前,我可以生成编译错误,并在Eclipse中显示错误注释)。

不幸的是,注释上没有继承,因此,您无法检查泛型类型是否用
@XmlRootElement
注释。