0

私は4つのクラスを持っています.AはBを拡張し、CはDを拡張します.そして、次のコード:

class B
{ 
    Set<D> mySet;

    public Set<D> getMySet()
    {....}

    public void setMySet(Set<D> setset)
    {....}
}

class A extends B
{
    Set<C> mySet;

    public Set<C> getMySet()
    {....}

    public void setMySet(Set<C> setset)
    {....}
}

get/set は親クラスと同じ消去を行うため、クラス A はコンパイルされません。A のセットのタイプを削除すると、コンパイルはうまくいきますが、クラスがマップされているため、休止状態のエラーが発生します。A のマッピングは、継承に関する情報がなくても簡単です。どういうわけかマッピング hbm.xml を変更せずに、クラス B を変更せずに動作させることはできますか (lib が提供されているためできません)。この場合、Bクラスを変更せずに最善の解決策は何ですか?

4

0 に答える 0