第二讲 面向对的基本概念.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文档。上传文档
查看更多
第二讲 面向对的基本概念

第二讲 面向对象的基本概念 §1 对象(object) §1 对象(object) §1 对象(object) §1 对象(object) 对象的选择是绝对关键的一步,对象的确定与划分是否恰当将直接影响所编程序的质量; 对象的确定与划分没有唯一标准,依赖于设置对象的目的和所需进行的操作; 最基本原则:寻求事物的共性,将所有具有共性的系统成分确定为一个对象; 唯一标识(identify)一个对象 是对象能够对自身以及对外部对象施加操作的基础。 对象的状态可以分为内部状态和外部状态。内部状态不能被外界对象直接操作。而外部状态则能被外界对象直接操作。 §1 对象(object) 模块独立性——对象是独立存在的模块。对外提供功能,但隐藏功能实现细节。模块间依赖性极小或几乎没有,可独立为系统组合选用。 动态连接性——对象间通过消息激活机制动态连接起来,使整个机体运转起来。 易维护性——对功能的修改、完善被局限在对象内部,不波及外部,提高了对象和系统的可维护性。 §2 消 息 定义:消息是对象之间交互(相互请求和相互协作)的途径,是要求某个对象执行自身某个功能操作的规格说明。 §2 消 息 在OOP中,消息是向对象发出的服务请求 消息传递:控制手段 消息 = 消息名(参数) 消息的发送者和接受者都是对象 在面向对象程序设计语言中,消息是对类的成员函数的调用:对象名.方法名(参数) §2 消 息 同一对象可接受不同形式的多个消息,产生不同的响应 相同形式的消息可以发送给不同对象,所做出的响应可以是截然不同的 消息的发送可以不考虑具体的接收者,对象可以响应消息,也可以对消息不予理会,对消息的响应并不是必须的 §2 消 息 假定一批消息同属于一个对象: 公有消息 由外界对象直接向该对象发送的消息 私有消息 由该对象向本身发送的消息 §2 消 息 §2 消 息 是指将所有能支持此对象可接受消息的函数集中在一起,形成的一个大消息。 让对象执行这个函数而不管它可能做什么以及怎样做。 §2 消 息 §2 消 息 消息可分为3种类型(按消息处理处理划分): 可以返回对象的内部状态的消息; 可以改变对象的内部状态的消息; 可以做一些特定操作,改变系统状态的消息。 §2 消 息 向同一个对象发送的消息序列 向不同对象发送的消息序列 C++实例 §3 类(class) 类是具有相同属性和操作的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述。 类是对一组对象的抽象 大学生——〉学生——〉人 红苹果——〉苹果——〉水果——〉果实 类定义了这一组对象所共有的特征和行为 OOPL中的类相当于一种数据类型 §3 类(class) 类是多个实例的综合抽象 类是静态的,描述一组对象的结构特征和行为特征。 实例是类的个体实物 实例对象是动态的,具有创建、活动和消亡的过程。 §3 类(class) §3 类(class) §3 类(class) //定义一个学生类--student class student { private: char *name; //姓名 (属性) int mark; //分数 (属性) char *major; //专业 (属性) void changemark( ); //改变分数 (操作) protected: int getmark( ); //获得分数(操作) public: char *getname( ); //获得姓名信息(操作) char *getmajor( ); //获得专业信息(操作)       }; §3 类(class) class Ration { int nume, deno;  //属性:分子和分母 public: Ration( int n, int d ); // 构造函数 Ration Add( Ration q ); // 加法 Ration Sub( Ration q ); // 减法 Ration Mul( Ration q ); // 乘法 Ration Div( Ration q ); // 除法 void Print( ); // 输出 }; §4 作业 1.解释以下概念 对象、消息、类、消息序列。 2.对象有哪些特性? 3

文档评论(0)

189****8221 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档