前回の続きで、今度はメソッドで検証。。。
//スーパークラス
class AnimalM{
static void disp(String s){
System.out.println(“disp:” + s);
}
}
//サブクラス
class DogM extends AnimalM{}
//実行クラス
public class ExecM {
public static void main(String[] args) {
AnimalM a = new AnimalM();
DogM d = new DogM();
a.disp(“a”); → 「disp:a」と表示される ①
d.disp(“d”); → 「disp:d」と表示される ②
AnimalM.disp(“AnimalM”); → 「disp:AnimalM」と表示される
}
}
あれ?・・・^^;
ちなみに ① と ② の部分は、Eclipseでは、
『型AnimalM からの static メソッド disp(String) には static にアクセスする必要があります。』
と黄色ビックリマークで警告表示が出ます。