- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第3章 类与对象
// 日期结构 #includeiostream using namespace std; //------------------------------- struct Date{ int year; int month; int day; };//---------------------------- void print(Date); bool isLeapYear(Date d); //------------------------------- void main(){ Date d; d.year = 2007; d.month = 2; d.day = 28; if(isLeapYear(d)) print(d); }//--------------------------- 2 . 类与对象 类与对象的概念 什么是类: 把具有共性的一些事物归为一类,这是认识客观世界和分析问题的一般方法。 这里的共性是指事物的本质特征,分类实际上是一种抓住事物的本质而忽略一些无关紧要的细节的抽象过程。 实质上类是一种复杂的数据类型,它是将不同类型的数据(属性)和与这些数据相关的操作封装在一起的集合体。 例如: class Date 是日期类,它是对所有日期的一种概括。 2007-2-28 是具体的一个日期 请再看以下一些例子: 例: 从各种时钟到时钟类的抽象。 属性:时、分、秒 各种手表 抽象 操作:显示时间 设置时间 数据抽象:int hour,minute,second; 操作抽象:ShowTime();SetTime(int,int,int); 什么是对象: 对象是现实世界中一个实际存在的事物,它可以是有形的(比如具体的日期、某个钟表),也可以是无形的(比如一项计划)。 实质上对象是类的实例(instance),即类的变量。声明一种数据类型只是告诉编译系统该数据类型的结构形式,并没有预定内存,或者讲并没有创建了可用来存放数据的变量。类只是一个样板,以此样板可以在内存中开辟出一个个同样结构的实例——对象。 例如:2007-2-28是日期类的一个实例,它具备日期的一般特性和功能,即是日期类的一个对象。 Date d; d.set(2007,2,28); 对象在内存中的数据空间 类和对象的关系 “类与对象的关系如同模具与用这个模具铸造出来的铸件之间的关系”,模具只有一个,而相同的铸件可以成千上万;类是抽象的,而对象则是类的具体存在,概括起来有以下三种关系: 每个对象都是其所属类的一个实例(instance),称为对象实例。 类是对象实例的可能的无限集合,同一个类的所有对象都具有相同的属性描述和操作集,但对象标识符各不相同。 在面向对象程序设计语言中,通常用类作为样板(数据类型)来定义对象。 类的定义: 类是一种自定义的数据类型,类的定义一般分为说明部分和实现部分。 说明部分是用来说明该类中的数据成员和成员函数;实现部分是用来对成员函数的具体实现。说明部分告诉用户“做什么”,而实现部分告诉用户“怎么做”。 类成员函数: 定义类的成员函数的格式如下: 返回类型 类名::成员函数名(参数说明) { ???? 函数体 } void Date::set(int y,int m,int d){ year=y; month=m; day=d; } 为了使用类,还必须说明类的对象。 在定义类时,系统是不会给类分配存储空间的, 只有定义类对象时才会给对象分配相应的内存空间。 对象的定义格式 定义类对象的格式:类名 对象名表; 类名是待定的对象所属的类的名字。 对象名表中可以有一个或多个对象名,多个对象名用逗号分隔。 对象名中,可以是一般的对象名,还可以是指向对象的指针名或引用名,也可以是对象数组名。 对象成员的表示方法 一个对象的成员就是该对象的类所定义的成员。对象成员有数据成员和成员函数。一般对象的成员表示如下: 对象名.成员名//表示数据成员 或者 对象名.成员名(参数表)//表示成员函数 这里的“.”是一个运算符,该运算符的功能是表示对象的成员。 对象指针名-成员
您可能关注的文档
最近下载
- 英语被动语态(PPT36张).ppt
- F519133【复试】2024年四川大学125100工商管理《复试管理学》考研复试仿真模拟5套卷.pdf VIP
- 2025年中国废旧手机行业市场发展监测及投资潜力预测报告.docx VIP
- 读后续写动作描写六大微技能课件++2023届高考英语作文备考.pptx
- 2025年1月支委会会议记录 .pdf VIP
- 速冻汤圆制造可行性研究报告 .pdf
- 辽宁省名校联盟2023-2024学年高二下学期3月份联合考试化学试卷(无答案).docx VIP
- 《模拟电子技术实验》实践课程大纲.pdf VIP
- 带头严守政治纪律和政治规矩,维护党的团结统一等四个方面存在的问题与整改材料4.docx VIP
- 幼儿园小班数学教案《哪个大、哪个小》.pptx
文档评论(0)