假设我的实体类实现了一个接口。如何让我的控件类使用该接口,以便控件类可以将该接口实例化为对象。
最初我会使用我的控件类来实例化实体类的实例。但是,我想将它们与接口的使用分开。
答案 0 :(得分:3)
似乎Abstract Factory设计模式可以在这里提供帮助。
使用定义通用实体工厂的界面。一旦您的控件类具有工厂实例(作为接口),它就可以调用其createEntity()方法来创建特定的实体实例。
答案 1 :(得分:0)
其中一种方法是使用静态工厂方法创建并返回EntityInterface
引用。看到这个基本的例子:
EntityInterface entity = EntityFactory.getEntity();
使用如下定义的类型:
class EntityFactory {
public static EntityInterface getEntity() {
return new Entity();
}
}
interface EntityInterface {
}
class Entity implements EntityInterface {
}
答案 2 :(得分: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();