第12章泛型集合框架.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章泛型集合框架

第12章泛型与集合框架 12.1 泛型 泛型(Generics)是在JDK1.5中推出的,其主要目的是可以建立具有类型安全的集合框架,如链表、散列映射等数据结构 泛型的目的 Java泛型的主要目的是可以建立具有类型安全的数据结构,如链表、散列表等数据结构,最重要的一个优点就是:在使用这些泛型类建立的数据结构时,不必进行强制类型转换,即不要求进行运行时类型检查。 JDK1.5是支持泛型的编译器,它将运行时的类型检查提前到编译时执行,使代码更安全。 12.1.1 泛型类 可以使用“class 名称泛型列表”声明一个类,为了和普通的类有所区别,这样声明的类称作泛型类,如: class ShowObjectE E是其中的泛型,也就是并没有指定E是何种类型 泛型类的类体和和普通类的类体完全类似,由成员变量和方法构成 举例 public class ShowObjectE{ public showMess(E b){ String mess=b.toString(); System.out.println(mess); } } 12.1.2 泛型类声明对象 和普通的类相比,泛型类声明和创建对象时,类名后多了一对“”,而且必须要用具体的类型替换“”中的泛型。 Dog.java public class Dog { public String toString() { return } } Cat.java public class Cat { public String toString() { return 一只小花猫; } } public class Example12_1 { public static void main(String args[ ]) { ShowObjectDog showDog = new ShowObjectDog(); showDog.showMess(new Dog()); ShowObjectCat showCat = new ShowObjectCat(); showCat.showMess(new Cat()); } } 说明 泛型类中的泛型变量只能调用Object类中的方法,因此Cat和Dog类都重写了Object类的toString()方法。 12.1.3 泛型接口 可以使用“interface 名称泛型列表”声明一个接口,这样声名的接口称作泛型接口如 interface ListenE { void listen(E x); } 注:普通类实现泛型接口时,必须指定泛型接口中泛型列表中的具体类型 例12-2 interface ListenE { void listen(E x); } class Student implements ListenPiano { public void listen(Piano p) { p.play(); } } class Teacher implements ListenViolin { public void listen(Violin v) { v.play(); } } class Piano { public void play() { System.out.println(钢琴协奏曲:黄河); } } class Violin { public void play() { System.out.println(小提琴协奏曲:梁祝); } } public class Example12_2 { public static void main(String args[ ]) { Student zhang=new Student(); System.out.println(学生听:); zhang.listen(new Piano()); Teacher teacher=new Teacher(); System.out.println(老师听:); teacher.listen(new Violin()); } } Java集合框架 在Java语言中,设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。 所有抽象出来的数据结构和算法统称为Java集合框架 Java程序员在具体应用时,不必考虑数据结构和算法实现细节

文档评论(0)

181****7127 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档