public interface GenericDAO<T>{
// some methods
}
public interface PersonGenericDAO extends GenericDAO<Person> {}
public interface TeacherGenericDAO extends GenericDAO<Teacher> {}
public interface StudentGenericDAO extends GenericDAO<Student> {}
我有一个通过这些接口创建代理实例的库,如下所示:
creator.onDemand(PersonGenericDAO.class);
我只是想创建一个静态方法来删除不必要的接口。但我对此一无所知。
public static <X> GenericDAO<X> getGenericDAO(X type){
// return ??????????
}
答案 0 :(得分:0)
将参数设为Class<X>
:
public static <X> GenericDAO<X> getGenericDAO(Class<X> type){
return new HibernateDAO<X>();
}
并将其命名为
GenericDao<Person> personDao = getGenericDAO(Person.class);