我面臨一個奇怪的行爲,我不明白。 事實上,我有一個DAO AbstractFacade,其中我注入了一個EntityManager。從這個抽象類我導出了許多子類。 首先,該項目沒有正常工作,導致許多例外。然後我從錯誤消息中注意到,我有一個讓EntityManager執行持久性作業的問題。這是奇怪,因爲我得到了一個返回Java繼承方法重寫實例變量
entityManager.
public class AbstractFacade<T> {
private EntityManager em;
private Class<T> entityClass;
protected EntityManager getEntityManager() {
return em;
}
public AbstractFacade(Class entityClass){
this.entityClass = entityClass;
}
,所以我不知道爲什麼is'nt它的子類工作抽象類的吸?我有一個想法來覆蓋解決問題的方法,並且沒有更多的例外!
@Stateless
@LocalBean
public class AirportFacade extends AbstractFacade<Airport> implements AirportFacadeLocal{
@PersistenceContext(unitName = "flams_pu")
private EntityManager em;
public AirportFacade(){
super(Airport.class);
}
@Override
public EntityManager getEntityManager(){
return em;
}
那麼好,但迄今爲止,但我沒有satisfiyed因爲我could'nt找出它爲什麼did'nt重寫吸氣前工作嗎?
所以請如果有人知道爲什麼,讓我知道,非常感謝。
你不重寫,你的影子。用簡單的話說就是 –
。你不能。重寫僅適用於方法。 – ankurtr
繼承和覆蓋的概念對於實例和類varibales和方法是不同的 – Uselesssss