【发布时间】:2016-06-22 16:59:28
【问题描述】:
用这种伪语言想象这个映射
class Mapping{
key0 --> new ObjectValue()
key1 --> new ObjectValue()
key3 --> new ObjectValue1(String name)
key4 --> new ObjectValue2(String name, int age)
...
}
在此映射中,值由不同的构造函数实例化。当我调用任何键时,我想传递一些参数。
约束: 所有键都扩展自一个公共类。
所有 ObjectValues 都从一个公共类扩展而来。
我希望方法调用返回
StaticMapping.key0.get(); // return new ObjectValue()
StaticMapping.key1.get(name); // return new ObjectValue1(String name)
如何做到这一点?这是什么模式?
AFAIK 数据结构 Map ,enum constructor 无法实现这一点。
【问题讨论】:
标签: java constructor enums mapping