- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十六讲:泛型方法与受限泛型 课程导入 16.1 泛型方法的定义与使用 16.1 泛型方法的定义与使用 16.2 使用泛型为方法传入统一的参数类型 16.3 指定泛型上限 16.3 指定泛型上限 16.3 指定泛型上限 16.5 课堂小结 16.6 作业 吉首大学软件服务外包学院 吉首大学软件服务外包学院 吉首大学软件服务外包学院 * 清华大学出版社利用案例轻松学习Java语言(2013年) 配套课件PPT不足之处请多多指教 采用泛型具有提高程序的类型安全、消除强制类型转换和进行系统优化等优点。 1、已经学习的相关知识 2、思考问题 可以定义泛型类和泛型接口,在泛型类中,数据成员也可以定义为泛型类型。本次课讨论Java中提供泛型机制定义泛型方法以及泛型类和泛型方法参数的限制问题。 泛型方法指方法的参数为泛型类型,而不是泛型类型的对象。 泛型标识,而不是泛型类型 InformationT:泛型类型 T:泛型标识 程序案例15-1: 定义泛型方法 定义泛型方法,T表示参数类型为T 定义泛型方法,T表示参数类型和返回类型 调用第3行的方法,泛型参数为String类型 调用第3行的方法,泛型参数为Date类型 调用第10行的方法,泛型方法返回类型为Date 调用第10行的方法,泛型方法返回类型为String 在实际软件开发中,需要保证方法的参数类型是一致的,如果采用Object作为参数类型将导致类型不一致问题,而采用泛型可以保证向方法传入统一的参数类型。 程序案例15-2: 定义泛型方法 参数为两个相同的泛型类型对象 i1和i2的类型相同 i1泛型为String,i3泛型为Date,类型不同 T可以为任意类型 在实际应用中可能需要对泛型类型的范围的上限和范围的 下限进行设置以确保类型安全。 程序案例15-3:指定泛型上限 定义泛型类型,指定泛型为Person的子类,即泛型只能是Student或者Employee 定义参数为泛型对象的方法,并且指定通配符”?”只能是Person的子类,即Student或者Employee 16.4 指定泛型下限 16.4 指定泛型下限 程序案例15-4:指定泛型下限 定义参数为泛型对象的方法,并且指定通配符”?”只能是Student的父类,即Student、Person或者Object 1、泛型方法有哪两种使用形式? 3、指定泛型上限和下限有什么区别? 1、指定泛型上限采用extends关键字,能够定义泛型类型和声明对象。 2、指定泛型下限采用super关键字,只能声明泛型对象,而不能定义泛型类型。 1、定义泛型接口A,泛型B、C实现了泛型接口A。定义泛型类型X,并指定泛型是A的子类;定义类Y,该类中有一个方法method,他的类型为泛型B的父类。
文档评论(0)