BaseClass baseObj1 = new DerivedClass("valueofreqdfeature");
//the required feature gets added to the map in the base class
Map<String, Object> features = Collections.singletonMap("requiredFeature1Name","requiredFeatureValue");
BaseClass newBaseObj = baseObj1.createNewConcreteFeature(features);
createNewConcreteFeature
只会从地图中获取 requiredFeature 值并返回一个实例。这似乎是一种在派生类中是静态的方法,但是客户端无法使用现有对象创建派生类实例。有没有更优雅的写法?或者这有一些适用的模式吗?