これはおそらく愚かな質問ですが、なぜ以下のコンパイルが失敗したのか理解できません。Java汎用クラス階層と汎用実装
私のクラス階層
Dao.java
public interface Dao<E extends Entity, S extends SearchCriteria> {
<E> E create(E e) throws Exception;
}
このダオの一般的な実装はあり
DaoImpl.java
public abstract class DaoImpl<E extends Entity, S extends SearchCriteria> implements Dao<E, S> {
@Override
public <E> E create(E e) throws Exception {
throw new UnsupportedOperationException("this operation is not supported");
}
}
そして
ProcessDaoImpl.java
public class ProcessDaoImpl extends DaoImpl<Process, WildcardSearchCriteria> {
@Override // this is where compilation is failing, I get the error that create doesn't override a superclass method
public Process create(Process entity) throws Exception {
return null;
}
}
説明エンティティクラス階層の専門実装があり
Process.java
public class Process extends AuditEntity {
// some pojo fields
}
AuditEntity.java
public abstract class AuditEntity extends IdentifiableEntity {
// some pojo fields
}
IdentifiableEntity.java
public abstract class IdentifiableEntity extends Entity {
// some pojo fields
}
Entity.java
public abstract class Entity implements Serializable {
}
私の悪いに変更し、それを、それはかなり初心者でした。ありがとう – Ritesh