これが正攻法のファクトリメソッド private DigitalWorldClock(String c, float o) { super(c,o); } public DigitalWorldClock createInstance(String str) { int index = str.lastIndexOf(','); c = str.substring(0, index); o = Float.parseFloat(str.substring(index+1)); return new DigitalWorldClock(c, o); }