初步了解-泛型

2.泛型

2.1.泛型的作用

编写代码的时候,限制集合的处理类型,把程序运行时出现的问题转换为编译时发生的问题,提高程序的可读性和稳定性。

2.2.泛型的实现原理

Java中的泛型基本上都是在编译器这个层次来实现的(将泛型信息提供给javac编译器使用)。在源代码的级别上就阻止向集合插入非法数据。当编译器编译完Java程序后,生成的class字节码文件不再带有与泛型有关的信息,这个过程解释为type erasure(擦除)。

2.3.泛型方法

a.调用者传递什么类型的参数,函数返回值就是什么类型。
b.定义:public <类型参数变量> 返回值类型 函数名( 泛型 变量名 ){}
c.<类型参数变量>在返回值前static后

2.4.泛型类

a.让某个类创建对象的时候才确定某些方法,某些变量,返回值,参数的类型。
b.定义: 修饰符 class 类名<类型参数变量>{}
c.对于静态方法不使用。(静态方法先于对象存在)

2.5.泛型接口

a.当接口实现接口时才确定类型,或者当方法实现接口才确定某些方法,某些变量,返回值,参数的类型。
b.定义:interface 方法名{}
c.当某个接口,继承接口的时候,任然可以不指明类型。

2.6.泛型用于集合

通常会体现多态性,如ArrayList animals=new ArrayList();
animals.add(new Pig());animals.add(new Bird());
For(Animal a:animals){a.eat();}

2.7.泛型通配符

?extends T: 接收T类型或者T的子类型。
? super T 接收T类型或者T的父类型。#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值