java 泛型属性_Java-泛型

一、泛型的概念

●所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)。

●从JDK1.5以后,Java引入 了“参数化类型( Parameterized type) ”的概念,允许我们在创建集合时再指定集合元素的类型,正如: List, 这表明该List只能保存字符串类型的对象。

●JDK1.5改写了集合框架中的全部接口和类,为这些接口、类增加了泛型支持,从而可以在声明集合变量、创建集合对象时传入类型实参。

注意:

泛型的类型必须是类,不能是基本数据类型。需要用到基本数据类型的位置,拿包装类替换。

如果实例化时,没有指明泛型的类型。默认类型为java.lang.Object类型。

二、自定义泛型

1.泛型类、泛型接口

1.泛型类可能有多个参数,此时应将多个参数一起放在尖括号内。比如:

2.泛型类的构造器如下: public GenericClass()}。

而下面是错误的: public GenericClass(){}

3.实例化后,操作原来泛型位置的结构必须与指定的泛型类型一致。

4.泛型不同的引用不能相互赋值。

尽管在编译时ArrayList和ArrayList是两种类型,但是,在运行时只有一个ArrayList被加载到JVM中。

5.泛型如果不指定,将被擦除,泛型对应的类型均按照Object处理,但不等价于Object。经验:泛型要使用一律都用。要不用ÿ

你可能感兴趣的:(java,泛型属性)