java中泛型的理解
1、 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。
2、1.霏虍锚揣泛型类或泛型接口 如果一个类要和别的N个类型打交道,但是处理的逻辑都是一样的,我们可以把要处理的类作为类参(泛型),减少重复的代码。class A讣嘬铮篌ListForStudent{ void add(Student stu){...} Student get(int index){} } class AListForTeacher{ void add(Teacher stu){...} Teacher get(int index){} } class AList{ void add(Object stu){...}
3、完锾哩菸谷全重复的逻辑,只是运算因子不一样,用方法的封装去解决 完全重复的逻辑,只是实例状态不同,用继承去解决 完全重拎粹蠃账复的逻辑,只是面向的具体类型不同,用泛型去解决class AList<T>{ //T待定,泛型类中可以把T当作一个类型来使用。一旦确定,所有T出现的地方都会被真实的类型替代 void add(T stu){...} T get(int index){} } AList<Student> stuList = new AList<Student>(); stuList.add(new Teacher());//error stuList.add(new 好学生()); //ok
4、泛型方法 <T>List<T> queryForList(String query,Class<T> claz,Object... params) 调用: List<Student> stuList = queryForList(sql,Student.class);