首页 > 代码库 > 1.封装

1.封装

1.类和对象

  - 类的定义:class

  - 类成员的访问控制:public\private\protected

  - 对象:类的某一特定实体

2.构造函数和析构函数

  - 构造函数:函数名与类名相同,在对象被创建时自动调用

  - 复制构造函数:具有一般构造函数所有特性,但其形参是本类对象的引用

  - 析构函数:完成对象被删除前的一些清理工作。在对象生存期即将结束时刻被自动调用

3.前向引用声明

  - 解决问题:循环依赖

  - 具体内容:先声明类,然后使用类,最后实现类(作为形参/声明类对象指针/引用)

  - 注意:在实现类之前,不能定义类对象

4.UML类图

  - 数据成员表示语法:[访问控制属性] 名称  [:类型]  [=默认值]  [{约束特征}]

    eg:-hour:int=0{只读}

  - 函数成员语法:[访问控制属性]  名称  [(参数表)]  [:返回类型]  [{约束特征}]

    eg:+showTime():void{只读}

  - UML中,矩形表示一个对象,对象名字加下划线,由类名和对象名组成,“对象名:类名”

  - 依赖关系:A-->B;A使用了类B,即A依赖B

  - 关联:表述一个类的对象和另一个类的对象之间互相作用。A-B

  - 包含关系

    * 聚集:表示类之间关系是整体与部分,用空心菱形

    * 组合:表示类之间关系是个体与个体,用实心菱形

  - 继承关系:泛化,带有三角形的直线段

  - 注释:带有皱角的矩形

5.结构体:(保持和C程序的兼容性)

  和类类似,唯一区别在于默认控制属性不同,结构体为共有,类为私有

6.联合体:union

  - 全部数据成员共享同一组内存单元,是一种特殊类,可以有数据成员和函数成员,可以有构造函数和析构函数,可以控制访问权限。默认控制属性为共有。

  - 不能自定义构造析构重载复制构造

  - 不能继承,不支持包含多态

1.封装