私は、 "動物"クラスを構成する抽象クラス "MainClass"を持っています。共通の機能を持つ抽象クラスからTypeAとTypeBの2つのクラスを派生します。 TypeAクラスとTypeBクラスは、独自の機能を組み込むために拡張する必要があります。デザインパターンを使用してランタイムに機能を追加する
たとえば、TypeAはAnimalクラスの下にcat機能を追加する必要があります。テストアプリケーションがこのtypeA._animals._catのようなcatクラスにアクセスするようにしますか?
私はタイプが実行時に追加できないことは知っていますが、私の問題を解決できる他のデザインパターンはありますか?
public abstract class MainClass
{
public Animal _animals;
}
public class Animal
{
public Tiger _tiger;
}
public class Tiger
{
public int type { get { return "Tiger" ; } }
}
public class Cat
{
public int type { get { return "Car" ; } }
}
public class Leopard
{
public int type { get { return "Leopard" ; } }
}
public class TypeA : MainSession
{
//Would like to add type Cat to Animal class
}
public class TypeB : MainSession
{
//Would like to add type Leopard to Animal class
}
タイトルにタグを使用する必要はありません。 –
どのクラスがTypeAとTypeBですか?抽象クラスとしてAnimalクラスを作成し、それからTiger、Cat、Leopardを継承しない方が良いでしょうか? – Asdfg
あなたは解決しようとしている問題は何ですか?現在のクラス構造がわかりません – BrokenGlass