インターフェイスを実装するクラスを作成しています - インターフェイスには 1 つのメソッドが定義されています。クラス定義を書きimplements interfaceService
、クラス宣言の後に書き、定義を終了し、インターフェイスメソッドをオーバーライドせずにクラスの括弧を閉じると、問題なくコンパイルされます。コンパイル エラーは発生せず、実装クラスを Eclipse に保存できます。なんでそうなの?実装クラスがメソッドを強制的にオーバーライドするべきではありませんか? インターフェイスと実装クラスの定義は次のとおりです。
インターフェース:
public interface interfaceService{
List<Map<String, Object>> doSearch(SearchVo formVo,String indexName,String type)
throws SearchException;
long getTotalHitCount();
}
クラス:
public abstract class ClientFlagSearch implements SearchService{
}
これは、実装クラスを抽象として定義することに関係しているように感じます。なんで?