6

私は次のようなことができることを知っています:

public class AbstractDao<T extends Bean> {

}

この場合、Bean はクラスまたはインターフェースです。

次のような注釈を使用してこれを行う方法があるかどうか疑問に思っていました。

public class AbstractDao<T extends javax.persistence.Entity> {

}

このようなことは可能ですか?

前もって感謝します!

4

2 に答える 2

4

残念ながら、注釈には継承がないため、それは不可能です。

ここで同様の質問への回答を見てください。

Javaで注釈を拡張できないのはなぜですか?

于 2012-04-06T18:55:11.197 に答える
4

いいえ。Java言語仕様で、型変数は特定のクラスまたはインターフェースを拡張/実装するためにのみ制約できると述べています。クラスに注釈を付けても、クラスが特定の型を拡張または実装することはないため、注釈によって制約することはできません。

于 2012-04-06T19:04:54.767 に答える