Code Fix

上級 › default メソッドの衝突と解決 › パターン4

default メソッドの衝突と解決

複数のインターフェースから同名を継承すると衝突します。

 1  interface MathUtils {
 2      static int square(int n) { return n * n; }
 3  }
 4  public class Main implements MathUtils {
 5      public static void main(String[] args) {
 6          System.out.println(__________.square(5));
                                    ^
 7      }
 8  }
Main.java:5: error: cannot find symbol symbol: method square(int)

空欄を埋めてビルドを通す

広告
広告スロット(未設定)

default メソッドの衝突と解決

A.super.name() による明示的な選択を扱います。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)