私は、私が持っているJavaクラスの構造を最適にする方法を知りました。関連するJavaクラスのこのグループを構成する方法は?
BaseData&Behavior
|
extends
|
BaseData&Behavior_WithExtraData&Behavior
|
extends
|
BaseData&Behavior_WithExtraData&Behavior_AndAlsoTwoMoreViewsAndCalculationsOnTheBaseData
新機能が望まれている私たちのようなクラスたくなる:このクラスは、既存の階層にきちんと収まらない
BaseData&Behavior_AndAlsoTwoMoreViewsOnTheBaseData
を
元の構造は三つのクラスの階層です!
コードを複製せずに、このエレガントな方法でこの新しいクラスを作成するにはどうすればよいですか? RubyやScalaでは、例えばModuleやTraitを使うことができました。
私は、AndAlsoTwoMoreViewsAndCalculationsOnTheBaseData
コードをBaseData&Behavior_AndAlsoTwoMoreViewsAndCalculationsOnTheBaseData
とBaseData&Behavior_WithExtraData&Behavior_AndAlsoTwoMoreViewsAndCalculationsOnTheBaseData
の両方に委譲するクラスにすることを、Javaで行う方法だと考えています。
Javaでこれを構成するにはどうすればよいと思いますか?
おかげで、 アレックス
同様の質問に対する私の答えを見てください。私はこれが役に立つと思うhttp://stackoverflow.com/questions/4565635/to-subclass-or-not-to-subclass/4566107#4566107 –