對不起,我不知道如何恢復我的問題。是否可以在通用性中引入通用性?
讓我介紹一下我的問題:
我希望得到一個泛型類型的類型。
一些代碼:
public class AbstractDao<T, PK extends Serializable> {
public T getByPrimaryKey(PK primariKey) {
return null;
}
}
public class AbstractEntity<PK extends Serializable> {
PK id;
//Getter Setter
}
public class Entity extends AbstractEntity<Long> {
}
我想的代碼更改:
public class AbstractService<T, PK extends Serializable> {
AbstractDao<T, PK> dao;
public T getByPrimaryKey(final PK primaryKey) {
return dao.getByPrimaryKey(primaryKey);
}
}
public class EntityService extends AbstractService<Entity, Long> {}
的想法是去掉 「PK擴展序列化」,從AbstractService 並得到它動態地。
任何想法如何做到這一點? - > PK應該留...我不想使用的方法「對象」,而不是「PK」:
public T getByPrimaryKey(final PK primaryKey)
感謝您的幫助。
親切的問候
「這個想法是從AbstractService中刪除」PK extends Serializable「並動態獲取它。」你是什麼意思,「動態獲取」?你想用它做什麼? – 2010-12-19 15:42:16
要從哪裏動態獲取它?你不喜歡你現在的代碼是什麼? – 2010-12-19 15:46:08