- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 java新特性及其其他知识 --- 了解
淘 你 喜 欢! Java新特性 九穆 达到的目标 了解Java语言的新特性 内 容 泛型 自动包装和解包 更优化的循环语句 参数可变的方法 Printf (C风格的格式化输出方法) 枚举 静态引用 元数据-meta data(注解) Scanner 泛型(Generics) 泛型是一个重要的JAVA语言加强,它使语言更加灵活. 1.类型安全 泛型的主要目标是提高Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型假设。没有泛型,这些假设就只存在于程序员的头脑中。 2.消除强制类型转换 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。 3.潜在的性能收益 泛型为较大的优化带来可能。在泛型的初始实现中,编译器将强制类型转换(没有泛型的话,程序员会指定这些强制类型转换)插入生成的字节码中。但是更多类型 信息可用于编译器这一事实,为未来版本的JVM 的优化带来可能. 泛型一: 没有泛型的日子(1) JDK5以前的List操作: 类List的函数add接受一个Object参数: public boolean add(java.lang.Object element) 类List的函数get函数从中取出一个对象: public java.lang.Object get(int index) throws IndexOutOfBoundsException 一般编码示例: List stringList1 = new ArrayList(); stringList1.add(Java 5); stringList1.add(with generics); String s1 = (String) stringList1.get(0); 泛型一: 没有泛型的日子(2) 如果我们能限制装入对象的数据类型,使其保持一致,就能很好的 解决这个问题,这样取数据的时候将不要数据类型的强制转化. 实现方式一(走专门的List类的道路): 根据编程需要,在开发期间专门开发各种专有List对象. 比如针 对工需,开发一个EmployeeList. EmployeeList employeeList = new EmployeeList(); 实现方式二(走通用的List类的道路): 根据编程需要,开发一个通用的List类,在实例化的时候决定其 存放元素的数据类型. 也就是说数据类型也成为运行时制定. ArrayList Employee employeeList = new ArrayList() Employee; Employee emp=employeeList.get(0); 泛型二: 例子 创建一个只能包含整型对象的ArrayList并使用. (包含声明,实例化,存入,取出) //声明区(declaration) ArrayListInteger listOfIntegers; // 类型名为新语法 Integer integerObject; //实例化(instantiation) listOfIntegers=new ArrayListInteger(); //注意这里的写法 //存入 listOfIntegers.add(new Integer(10)); //不存入整数,会如何? //取出 integerObject=listOfIntegers.get(0); //这里不需要显示类转化 泛型三:泛型类/接口(generic class/interface) 1) 在定义一个泛型类的时候,在“”之间定义形式类型参数, 例如:“class TestGenK,V”,其中“K” , “V”不代表值,而是类型变量 2) 实例化泛型对象的时候,一定要在类名后面指定类型参数的值(类型),一共要有两次书写例如. interface BaseInterfaceA { A getInfo(); } class ParentClass implements BaseInterfaceInteger { public Integer getInfo() { return(null);} } 泛型四:多类型变量 HashMapString,Float hm = new HashMapString,Float(); import Java.util.Hashtable; class TestGen0K,V{ public HashtableK,V h=new HashtableK,V(); publ
您可能关注的文档
最近下载
- 人教版数学五年级上册教学计划及进度表.doc VIP
- 昆山通海中学小升初考试试卷.docx VIP
- 交警基本法律知识.pptx VIP
- 2025下半年湖南省国际工程咨询集团有限公司社会招聘34人笔试模拟试题及答案解析.docx VIP
- 2025年海南三亚市天涯区教育系统招聘幼儿园编制教师16人(第1号)笔试历年典型考题(历年真题考点)解题思路附带答案详解(5套).docx
- 旅游美学——第三章-审美心理.pptx VIP
- 《永冻土地区场道工程技术》课程教学大纲模板课程教学大纲.doc VIP
- 考研英语单词表汇总(5500).doc VIP
- 2025下半年湖南省国际工程咨询集团有限公司社会招聘34人笔试备考题库及答案解析.docx VIP
- 人教版(2024)七年级美术上册第二单元第2课《科技之光》精品课件.pptx VIP
文档评论(0)