くだすれJava(超初心者用) その2
■ このスレッドは過去ログ倉庫に格納されています
0019デフォルトの名無しさん
2007/03/13(火) 20:34:37}
class C2 extends C1{
void f(){
System.out.println("f() is executed.");
}
}
class Example{
public static void main(String args[]){
C1 obj = new C2();
obj.f();
}
}
上記のプログラムをコンパイルすると、
「メソッド f() はclass C1 で見つかりません。」
というメッセージが出てコンパイルエラーとなりました。
あるクラスの変数によってサブクラスのオブジェクトを参照する場合、
そのオブジェクトが呼び出すメソッドは、スーパークラスでも宣言されている
オーバーライドメソッドでなければならないということですか?
■ このスレッドは過去ログ倉庫に格納されています