文档详情

0202面向对象和类的概述.ppt

发布:2017-04-20约字共84页下载文档
文本预览下载声明
第八章 类和数据抽象(1) ;主要内容: ;重点:;8.1 面向对象的基本概念;例8-1 学籍管理系统是由学生、教师、课程、各种 规章制度等多个对象集合而成的。学生、教师、 课程等实体之间存在着各种关联, 例如学生选择 课程,老师讲授课程等等。研究生、本科生、专 科生和学生之间的关系是“一般化”关系。 ;2. 面向对象的本质 ;3 对象;2)对象的定义;4. 对象类;注意:抽象是分类的依据,也即分类一定要满足“一般化”这一基本要求 。;2)类的定义 ;3)类和对象的关系 ;8.2 对象类的主要性质 ; 2. 封装 ; 2)定义 ;3. 继承 ;2)定义 ;4. 多态性 ;;2)多态性的定义;8.2 定义类和对象; 在任何数据处理系统中,文件都是十分重要的实体,一个文件由以下两部分组成:;class File { FILE *fp; …… public: File(const char *name, const char *open_mode); ~File(); size_t read(const size_t howmany, const size_t elem_size, void *buffer); size_t write(const size_t howmany, const size_t elem_size, const void *buffer); };2.类的语法 ;3. 访问说明符;注意:通常将类定义放在头文件中。 ;4.类和结构的比较 ; 保护部分数据成员的目的在于将它们有效地屏蔽,以防外界的干扰和误操作,增强适应性。;class Time { private: int hour; //0-23 int minute; //0-59 int minute; //0-59 public: Time(); //构造函数 void SetTime(int,int,int); void DisplayTime12 (void); void DisplayTime24 (void); }; ;例8-8 建立图形的基类。 ;解释:;7.声明对象 ;1)分析;//**********p9-1.cpp ******************* include “Tsavings.h” void main() { Savings s1,s1; s1.deposit(100.5); s2.deposit(200.5); };某种标识是指:;(1)数据成员的全名;注意: ;例8-9 全局数据和全局函数的引用示例。;2.在类中定义成员函数 ;(1)分析 ; public: void set(int m,int d,int y) //设置日期 { month=m; day=d; year=y; } int IsLeapYear() //判断是否为闰年 { if (year %4 ==0 year % 100!=0) return(1); else if (year % 400 ==0) return(1); else return(0); }; void Print() //输出日期 { cout month / day / year endl; }; };? void main( ) { Tdate date; int month,day,year; ? cout 输入日期:月、日、年; cin month day year; date. set(month,day,year); date.Print(); if (date.IsLeapYear()) cout 闰年; else cout 不是闰年; } ;(3)程序说明;3.在类的外部定义成员函数 ;(2)可以由独立软件供应商(ISV)提供类库进
显示全部
相似文档