我用一个非常简单的工厂类创建一个初始化一些我的对象:在对象工厂的类型不匹配
public class MyFactory {
public static Superclass createObject(String type) {
Superclass myObject = null;
if (type.equals("type1")) {
myObject = new Subclass();
myObject.setParam("val1");
}
return myObject;
}
}
不那么复杂:-)没有通用的代码等等,只有这样。不过,我得到一个类型不匹配错误在Eclipse中,如果我用我厂是这样的:
Subclass myObj = MyFactory.createObject("type1");
错误说,它不能从父类转换成子类,但到处看(头设计模式等),我可以看到它这样:返回作为类型的创建子类的超类......所以,为什么我得到这个错误:-)?谢谢!
@Vakimshaar接受它是绝对:-) – strauberry