一般的な Dao インターフェイスを作成していますが、いくつか問題が発生しました。
私は次の一般的なエンティティインターフェースを持っています
public interface Entity<T> {
T getId();
//more code
}
したがって、ジェネリック パラメータはエンティティの ID を表すことになっています。そして今、私はこのような一般的な Dao ininterface を書きたいと思っています
public interface Dao<T extends Entity<E>> {
//more code
T find(E id);
}
通話できるように
T find(E id)
電話する代わりに
T find(Object id)
タイプセーフではありません。
残念ながら、コンパイラは E in を解決できないようです
Dao<T extends Entity<E>>
この問題の回避策があるかどうか知っている人はいますか?それとも Java では不可能なのでしょうか?