@Pattern アノテーションのないメソッドが @Pattern アノテーションが付いたメソッドをオーバーライドしている場合に報告します。 このような場合にエディタ内でエラーがハイライトされなくなることはありませんが、オーバーライドしているメソッドは実行時にチェックされません。

スーパークラスメソッドのアノテーションと一致する @Pattern アノテーションを追加するクイックフィックスが提供されています。 このクイックフィックスは、ランタイムチェックのインストルメンテーションが正しく機能するようにします。

例:


  abstract class Parent {
    abstract @Pattern("\\d\\d-\\d\\d\\d") String getId();
  }
  class Child extends Parent {
    @Override String getId() { // ここで警告が出ます
      return "12-345";
    }
  }