Java学习泛型程序设计

2020-05-24 20:07:46

1.泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用;泛型提供了一个更好的解决方法,类型参数,类型参数的魅力在于使程序具有更好的可读性和安全性

2.类定义中的类型变量指定方法的返回类型以及域和局部变量的类型

3.在Java库中,使用变量E表示集合的元素类型,K和V分别表示表的关键字与值得类型,T(需要时还可以用临近得U和S)表示“任意类型”

4.泛型类可看作普通类得工厂

5.在普通类和泛型类中可以定义带有类型参数的方法,类型变量放在修饰符得后面,返回值的前面

6.当调用一个泛型方法时,在方法名前的尖括号中放入具体的类型,在这种情况下,方法调用可以省略类型参数

7.有时类或方法需要对类型变量加以约束

对类型变量进行限定<T extends Compareble>表示T应该是绑定类型的子类型,T和绑定类型可以是类,也可以是接口,选择关键词extends的原因是更接近子类的概念,一个类型变量或通配符可以有多个限定,限定类型用&分隔,而用逗号来分隔类型变量

8.在Java继承中,可以根据需要拥有多个接口超类型,但是限定中至多一个类,如果用一个类作为限定,它必须是限定列表中的第一个

9.类型擦除,无论何时定义一个泛型类型,都自动提供一个相应的原始类型,原始类型的名字就是删去类型参数后的泛型类型名,擦除类型变量,并替换为限定类型(无限定的变量用Object)

10.当程序调用泛型方法时,如果擦除返回类型,编译器会插入强制类型转换;当存取一个泛型域时也要插入强制类型转换

猜你喜欢

转载自www.cnblogs.com/gb12138/p/12952720.html