Java SE 8 では、デフォルトメソッドが追加されたため、メソッド継承のルールが新しくなりました。以下に、 Java SE 8 でのメソッド継承のルールを一通りまとめます。 前提となる概念 型消去 (type erasure) シグネチャ (signature) サブシグネチャ (subsignature) オーバーライド等価 (override-equivalent) メソッド継承のルール 継承 (inheritance) の基本 コンパイル時エラーになるケース 型消去 (type erasure) 「型消去」とは、総称型から型パラメータを引っぺがすことです。たとえば、 <T> List<T> asList(T[] elements) を型消去すると List asList(Object[] elements) になります。 言語仕様では次のように定義されています。 型消去 (era