- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java程序设计第八次课
泛型操作范例 题目要求 用户在设计类的时候往往会使用类的关联关系,例如,一个人中可以定义一个信息的属性,但是一个人可能有各种各样的信息(例如:联系方式、基本信息等),所以此信息属性的类型就可以通过泛型进行声明,之后只要设计相应的信息类即可。 泛型操作范例 定义标识接口 —— 信息 但是需要注意的是,既然需要的是一个信息的类,所以在设计此类的时候最好做一个信息的标识接口,只要传递的是此接口的子类就可以设置成泛型类型。 Java程序设计基础 河南中医学院信息技术学院 杨枫(yangfeng1126@) 本次课的主要内容 为什么要使用泛型,泛型应用 泛型的安全警告 通配符 3 泛型与子类继承的限制 4 泛型接口,泛型方法 1. 2. 3. 4. 5. 泛型数组 6. 泛型的嵌套设置 7. 为什么要使用泛型,泛型的应用 为什么要有泛型? 现在有以下的实例要求: 现在要求设计一个可以表示出坐标点的类,坐标由X和Y组成,坐标的表示方法有以下三种: 整数表示:x = 10、y = 20 小数表示:x = 10.5、y = 20.6 字符串表示:x = 东经180度、y = 北纬210度 问:此类该如何设计? 包的定义 为什么要使用泛型,泛型的应用 题目分析 一看到这样的要求,大家首先就要考虑到,必须建立好一个表示坐标点的类 —— Point,此类中有两个属性分别用来表示x坐标和y坐标,但是x和y中所保存的数据类型会有三种(int、float、String),而要想使用一个类型可以同时接收这样的三种类型数据,则现在只能使用Object,因为Object类可以接收任何类型的数据,都会自动发生向上转型操作,这样三种数据类型将按以下的方式进行转换: 数字(int) ? 自动装箱成Integer ? 向上转型使用Object接收 小数(float) ? 自动装箱成Float ? 向上转型使用Object接收 字符串(String) ? 向上转型使用Object接收 为什么要使用泛型,泛型的应用 设计Point类 class Point { private Object x; // 表示x坐标 private Object y; // 表示y坐标 public void setX(Object x) { this.x = x; } public void setY(Object y) { this.y = y; } public Object getX() { return this.x; } public Object getY() { return this.y; } }; 为什么要使用泛型,泛型的应用 代码的问题 public class GenericsDemo04 { public static void main(String[] args) { Point p = new Point() ; p.setX(10) ; // 利用自动装箱操作:int -- Integer -- Object p.setY(北纬210度) ; // String -- Object int x = (Integer)p.getX() ; // 取出数据 int y = (Integer)p.getY() ; // 取出数据 ?此处出现了类转换错误 System.out.println(整数表示,X坐标为: + x) ; System.out.println(整数表示,Y坐标为: + y) ; } } 为什么要使用泛型,泛型的应用 泛型 泛型可以解决数据类型的安全性问题,它主要的原理,是在类声明的时候通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这样在类声明或实例化的时候只要指定好需要的类型即可。 泛型类定义格式: [访问权限] class 类名称泛型类型1,泛型类型2,…泛型类型3{ [访问权限] 泛型类型标识 变量名称 ; [访问权限] 泛型类型标识 方法名称(){} ; [访问权限] 返回值类型声明 方法名称(泛型类型标识 变量名称){} ;} 泛型对象定义 类名称具体类 对象名称 = new 类名称具体类() ; 为什么要使用泛型,泛型的应用 声明泛型 class PointT { // 此处可以是任意的标识符号,T是type的简称 private T var; // 此变量的类型由外部决定 public T getVar() { // 返回值的类型由外部指定 return var; } public void setVar(T var) {//
您可能关注的文档
- 策略模式实现对数据的排序.doc
- java基础题目.doc
- 山大(威海)java 课件 第五章.ppt
- 第六章(理论).ppt
- Java2第4章.ppt
- 算法分析与设计(第2版)动态规划.ppt
- 18 编写字符界面应用(上).ppt
- JavaEE物联网云计算系列培训教材-Java基础04.ppt
- 无锡科院考JAVA题库2.ppt
- L10A单例(Singleton)模式.ppt
- CN111049433B 磁极初始位置检测装置以及磁极位置检测装置.pdf
- 2025至2030全球及中国车牌行业市场深度研究及发展前景投资可行性分析报告.docx
- 福建省百分智金太阳高三下学期2月联考-生物试卷(含答案).docx
- 2025至2030全球及中国车牌识别(CPR)行业市场深度研究及发展前景投资可行性分析报告.docx
- CN111050642B 疼痛判别方法、计算机程序产品、记录介质以及疼痛判别系统.pdf
- 2024年南阳师范学院招聘真题.docx
- CN111042494B 升降平移滚轮式墙面抹灰装置.pdf
- 2025至2030全球及中国跨渠道表现广告平台行业市场深度研究及发展前景投资可行性分析报告.docx
- CN111043471B 电视机支架及在其上安装电视机的方法.pdf
- 山东德州职业技术学院招聘考试真题2024.docx
最近下载
- VEICHI伟创 AC310系列变频调速器使用手册2021.06.pdf VIP
- 隧道施工课件.ppt VIP
- 第五届国家级新区经开区高新区班组长管理技能大赛备赛试题库-下(判断题汇总).docx VIP
- DB 6108T 53-2023 煤基固废调理剂修复沙化土地技术规范.docx VIP
- DB6108_T 52-2023 煤基固废调理剂修复盐碱地技术规范.docx VIP
- 行政人事部年终工作总结.pdf VIP
- 行政人事部年终工作总结.pptx VIP
- 第五届国家级新区经开区高新区班组长管理技能大赛备赛试题库-中(多选题汇总).docx VIP
- 化工厂物资明细表.xls VIP
- 第五届国家级新区经开区高新区班组长管理技能大赛试题库(浓缩500题).docx VIP
文档评论(0)