注釈を付けずにプロセッサをコンパイラに追加する方法はありますか?
基本的に、ユーザーがインターフェイスを正しく実装していない場合 (つまり、事後条件が満たされていない場合)、ビルドが失敗することを望みます。コンパイル時に、クラスがインターフェイスを実装しているかどうかを確認し、実装している場合は、コードを実行して実装が正しいかどうかを確認したいと考えています。
たとえば、getErrorMoniker() を実装するクラスがキャメルケースで文字列を返すようにしたいと考えています。
public interface MyError {
public String getErrorMoniker();
}
public class MyErrorImplemented1 {
@Override
public String getErrorMoniker() { return "goodErrorMoniker"; }
}
public class MyErrorImplemented2 {
@Override
public String getErrorMoniker() {
return "BADERRORMONIKER"; // I would like a compile error here
}
}
任意の提案をいただければ幸いです。