十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
泛型泛型(generic)概述和基本使用
泛型把明确数据类型的操作放到创建对象或者调用方法的时候再明确。
JDK1.5之后的新特性。
格式:
<引用数据类型>
好处:
泛型保证集合中的数据类型一致,提高安全性。把运行期异常提前到编译期。
那么在JDK1.5之前怎么实现参数的任意化呢?
是通过接收Object类型的参数实现的。因为任意类直接或间接继承自Object。
但这样实现的缺点就是,还是不能保证数据类型的安全一致。
Object obj1 = new Student();
Object obj2 = new Teacher();
上面两个对象都声明为Object类型,那获取元素的时候到底该如何转型呢?还是存在问题。
应用:
泛型类
泛型接口
泛型方法
2、ArrayList存储字符串和自定义对象并遍历泛型版
3、泛型的由来
补充:泛型擦除
查看下述两个方法:
public void show(ArrayList
public void show(ArrayList
/*
* 上述两个方法是不会形成方法的重载的,会报方法已存在的错误。 原因:泛型擦除
* 泛型是1.5中引入的一个新的概念,由于不用进行强制转换类型了,所以具有较高的安全性和易用性。
* 因为泛型其实只是在编译器中实现的而虚拟机并不认识泛型
* ,所以要在虚拟机中将泛型类型进行擦除。也就是说,在编译阶段使用泛型,运行阶段取消泛型,即擦除。
* 擦除是将泛型类型以其父类代替,如String变成了Object等。
* 其实在使用的时候还是进行带强制类型的转化,只不过这是比较安全的转换,因为在编译阶段已经确保了数据的一致性。
*/
4、泛型类的概述及使用
明确数据类型的工作放到了创建对象的时候
5、泛型方法的概述和使用
明确数据类型的工作放到了调用方法的时候
方法泛型 <> 加在返回值前面。
6、泛型接口的概述和使用
一种是子类实现接口的时候明确数据类型
interface Fu
class Zi implements Fu
一种是子类继续使用泛型:
class Zi
7、泛型高级之通配符
> -- 泛型通配符
extends E> -- 向下限定,接收E及其子类类型
super E> -- 向上限定,接收E及其父类类型
原理:多态。 -- 父类引用指向子类对象。 Fu fu = new Zi();
10余年的铁门关网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整铁门关建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“铁门关网站设计”,“铁门关网站推广”以来,每个客户项目都认真落实执行。