10/06/29 00:41:52
残念です・・・ありがとうございました。
class nor_ih : nor {
static new public nor StaticFuctory() { return new nor_ih(); }
}
class gen_ih : gen<nor> {
static new public nor StaticFuctory() { return new nor_ih(); }
}
とか上書きして、
var n = nor.StaticFuctory();
var n_ih = nor_ih.StaticFuctory();
var g = gen<nor>.StaticFuctory();
var g_ih = gen_ih.StaticFuctory();
と呼び出したかった・・・
でも継承クラスを指定しても基底クラスのstaticメソッドが呼ばれますよね。
class nor {
static public nor StaticFuctory0() { return new nor(); }
static public nor StaticFuctory() { return new nor(); }
}
として StaticFuctory0 は上書きしないで、
var n_ih0 = nor_ih.StaticFuctory0();
とすると動きますから。
なんでダメなんだろう?素朴な疑問。