私は非常に複雑なクラスのAComplexを持っています。これにはプライベートメンバーがたくさん含まれていますが、今はクラスのパブリックバージョン(ASimple_V1)を作成したいと思います。プライベートメンバーのサブセットのみを含み、それらを公開しました。Javaクラスのメンバーのサブセットを抽象化する方法を改善する
class AComplex{
private T1 t1;
private T2 t2;
....
}
class ASimple_V1{
public T1 t1;
public T2 t2;
}
class ASimple_V2 extends ASimple_V1{
public T3 t3;
public ASimple_V2(AComplex a){
t1 = a.t1;
t2 = a.t2;
t3 = a.t3;
}
}
は、私が使用します。また、後で私は、以前のバージョンに基づいて複数のバージョンをしたいのですが..私が持っていた現在のソリューションは本当に不器用である(例えば、ASimple_V2は、ASimple_V1に基づいていますが、はAComplexからより多くを追加しました)複雑なクラスをparamとして取るコンストラクタは、手動ですべての値を割り当てる必要があります。そのような目標を達成するためのより良い方法はありますか?