public class FactoryProducer {
public static AbstractFactory getFactory(String choice){
if(choice.equalsIgnoreCase("ENTITIES")){
System.out.println("entities factory created with out calling");
return new LoadEntityFactory();
}
elseif(choice.equals.IgnoreCase("UNITS"))
return new UnitFactory();
}
}
LoadEntity类是否被加载的类时,静态方法创建对象
public class LoadEntityFactory extends AbstractFactory {
@Override
public loadEntities getLoadEntity(String entity) {
if(entity==null){
return null;
}else if (entity.equalsIgnoreCase("categories")) {
return new LoadCategoryEntity();
}
else if (entity.equalsIgnoreCase("books")) {
return new LoadBookEntity();
}
else if (entity.equalsIgnoreCase("author")) {
return new LoadAuthorEntity();
}
else if (entity.equalsIgnoreCase("publisher")) {
return new LoadPublisherEntity();
}
return null;
}
}
我现在的问题当我打电话FactoryProducer.getFactory(“实体”),它会创建三个对象,两个对象(实体,单元)将在类加载到JVM时创建,而当我调用静态方法时会创建一个?
哪三个对象在FactoryProducer.getFactory(“entities”)方法调用时创建? –