0

私のエンティティクラスがインターフェイスを実装するとします。コントロールクラスがそのインターフェイスをオブジェクトとしてインスタンス化できるように、コントロールクラスにそのインターフェイスを使用させるにはどうすればよいですか。

最初は、コントロールクラスを使用して、エンティティクラスのインスタンスをインスタンス化します。ただし、インターフェイスを使用してそれらを分離したいと思います。

4

3 に答える 3

3

ここでは、Abstract Factoryデザイン パターンが役立つようです。

汎用エンティティ ファクトリを定義するインターフェイスを使用します。コントロール クラスがファクトリ インスタンスを (インターフェイスとして) 持つと、その createEntity() メソッドを呼び出して、特定のエンティティ インスタンスを作成できます。

于 2013-02-27T08:18:54.460 に答える
0

これを行う方法の1つは、静的ファクトリメソッドを使用してEntityInterface参照を作成して返すことです。この基本的な例を参照してください。

EntityInterface entity = EntityFactory.getEntity();

次のように定義されたタイプの場合:

class EntityFactory {
    public static EntityInterface getEntity() {
        return new Entity();
    }
}

interface EntityInterface {

}

class Entity implements EntityInterface {

}
于 2013-02-27T08:17:57.443 に答える
0

これを達成するために静的ファクトリメソッドを使用できます

実装例

public class ModelFactory implements ModelInterface{


    public static ModelInterface getNewInstance() {
        return new Model();
    }
}


public interface ModelInterface {

}


public class Model implements ModelInterface{

}

現在、コントローラークラスに

 ModelInterface object =  ModelFactory.getNewInstance();
于 2013-02-27T08:36:44.077 に答える