上級 › @Override が通らないときの確認手順 › パターン2
@Override が通らないときの確認手順
名前・引数・可視性の3点が一致条件です。
1 class Base { 2 void run(String s) { System.out.println("base"); } 3 } 4 public class Main extends Base { 5 @Override 6 void run(____________ s) { System.out.println("main"); } ^ 7 public static void main(String[] args) { 8 new Main().run("x"); 9 } 10 }
Main.java:5: error: method does not override or implement a method from a supertype
空欄を埋めてビルドを通す
引数の型が違うとオーバーライドではなくオーバーロードになります。別のメソッドとして扱われます。
次の問題