【初心者】Java質問・相談スレッド100【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0135デフォルトの名無しさん
2007/04/03(火) 17:29:58staticなメソッドをサブクラスでstaticなメソッドとして再定義すると、
メソッドはオーバーライドでなく隠蔽される。
隠蔽の場合は静的バインディングが行われるので、
そのメソッドを呼び出したインスタンスの静的な型情報にしたがって呼ばれるメソッドが決まる。
だから、SuperClass o = new SubClass(); o.staticMethod();だとすると、
oの静的型であるSuperClassのstaticMethod()が呼ばれる。
■ このスレッドは過去ログ倉庫に格納されています