计算概论课程第十九讲C程序设计语言应用-欢迎访问北京大学信息.PDF

计算概论课程第十九讲C程序设计语言应用-欢迎访问北京大学信息.PDF

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算概论课程第十九讲C程序设计语言应用-欢迎访问北京大学信息

《Java高级技术》课程 Java语言的高级特性 李 戈 北京大学 信息科学技术学院 软件研究所 2009年4月18 日 对象容器  对象容器  能够容纳其它对象的对象; 容纳的对象称为对象容器的元素;  对象容器的作用  对象容器提供了一些有用的数据结构和算法,是程序 组织和操纵批量数据的强有力工具;  重用对象容器可提高程序员的软件开发效率;  如何使用对象容器  了解对象容器类所能存放对象的类型,它的结构特点 以及它可以提供的操作。 Java 中的数组  Java 中的数组与对象容器的关系 数组也是对象容器,而且是一种最基本的容器。 在Java 语言中 ●只有数组能容纳基本类型的数据; ●其它的对象容器都不能容纳基本类型的数据, 只能容纳对象(严格地说是对象引用),它们 要存放基本数据类型的数据只能使用基本数据 类型的包装类; 对象容器的形态  对象容器需要提供的基本操作应该是多态的,即:能 适用于任意类型的对象,这种多态性有两种实现方式: 使用类属机制 ●对象容器能存放的对象类型是创建对象容器时的参数,一 旦容器类的对象实例创建之后,它只能存放该类型或它的 子类型的对象,C++语言的对象容器采用这种实现方式; 使用统一根类 ●设计一个根类,对象容器存放的对象都声明为该 类型,使容器能存放任意类型的对象。Java 语言 使用第二种实现方式; 对象容器的形态  两种实现方式的比较(编译时的类型检查)  类属机制实现的多态性, ●编译时就能够确定容器所存放对象的类型信息,操作 容器内的对象时编译器能够进行更多的类型检查,生 成的代码可以更为安全且具有更高的运行效率。 采用单根类实现的多态性 ●必须将对象的类型转换为根类类型,丢失了对象的特 有信息,从而操作容器内的对象时编译器无法进行更 多的类型检查。 ●当要使用存放在容器内的对象时,必须将其类型转换 为该对象原来的类型,对这种类型转换的检查只能在 运行时进行,因此编译器生成的代码相对低效,且可 能引发运行时异常。 对象容器的类型  主要有四个因素影响对象容器:  是否允许存放重复的对象 ●指容器中包含有多个使用深比较相等的对象;  存放的对象之间是否有序 ●如果所存放的对象有序,则对象之间必须是可比较的;  如何访问所存放的对象 ●随机访问:能用常数时间访问容器内任意位置的对象; ●顺序访问:只能从存放对象的起始或者末尾位置开始访问; 分为:单向顺序访问和双向顺序访问;  存放对象的数目是否有限制 ●容器是否可以自动扩展以存放更多的对象; Java对象容器的种类  按对象容器能存放的对象将容器分为两种:  类集(collection)容器 ●其中存放的基本单位是单个对象; ●用接口Collection 描述这种容器的基本操作;  包括添加(add)、删除(remove)、查找是否包含某对象 (contains)及返回迭代器(iterat

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档