想写一个abstract BaseDao让所有的Dao继承。
里面写了一个函数 public abstract void add(BaseEntity baseEntity);
当然所有的Entity也都是要继承BaseEntity的。在实现UserDao的时候,打算写成
public void add(UserEntity userEntity);
但是报错了。因为没有实例化虚函数add(BaseEntity baseEntity);是不是强制转换一下就可以?或者还有更好的办法来实现?多谢各位帮忙。谢谢java 继承 java继承Daoabstract
里面写了一个函数 public abstract void add(BaseEntity baseEntity);
当然所有的Entity也都是要继承BaseEntity的。在实现UserDao的时候,打算写成
public void add(UserEntity userEntity);
但是报错了。因为没有实例化虚函数add(BaseEntity baseEntity);是不是强制转换一下就可以?或者还有更好的办法来实现?多谢各位帮忙。谢谢java 继承 java继承Daoabstract
public void add(E entiry); ...
}public abstract class BaseEntityDAO<E extends Entiry> implements EntiryDAO<E> {
...
}public class UserDAO extends BaseEntiryDAO<UserEntity> { @Override
public void add(UserEntiry user) { ... } ...
}
/**
* 查询一个实体
* @param <T>
* @param entityClass
* @param entityId
* @return
*/
public <T> T find(Class<T> entityClass,Object entityId);
/**
* 持久化一个对象
* @param object
*/
public void persist(E object); /**
* 更新一个对象
* @param object
*/
public void merge(E object);我是这样干的
先写个interface,然后写个abstract类给接口一些方法填写默认的实现方法,
需要继续让子类重载的方法就不用给写方法体了