我有以下Java代码,其中使用enum data type创建基类的实例,如下所示: 主要抽象类:
public abstract class Element{
static enum elements{
quad8{Element create(){return new ElementQuad2D();}};
abstract Element create();
}
public static Element newElement (String name){
el=elements.valueOf(name);
return el.create();
}
public Element (String name, int nind, int nstress){
this.name = name;
/*Do Something Else*/
}
}
子类:
class ElementQuad2D extends Element{
public ElementQuad2D(){
super("quad8",8,4);
}
}
如何像上面那样创建枚举类型,以便我可以基于元素名创建不同子类的实例,比如PYTHON中的“quad8”?你知道吗
这可以通过从字符串到类的字典轻松实现。子类的使用在这里不起作用:
相关问题 更多 >
编程相关推荐