面向对象的基本概念

面向对象的基本概念

程序化结构设计

在程序化结构设计中,采用 自顶向下、逐步求精及模块化 的思想

在编写程序时,使用3种基本控制结构来构造程序,即:顺序选择循环

面向对象程序设计的概念和特点

面向对象的程序设计方法,通常包括3个方面:

  1. 面向对象的分析
  2. 面向对象的设计
  3. 面向对象的程序设计

对象具有的2个特征:

  1. 状态:静态特征,指对象本身的信息,也称为属性;
  2. 行为:动态特征,对对象的操作;

面向对象的程序设计的4个基本特点:

  1. 抽象
  2. 封装
  3. 继承
  4. 多态

对象的特点:

  1. 属性:描述对象静态特征的数据项;
  2. 操作:描述对象动态特征的函数序列。

C++中使用3个要素来描述对象:

  1. 对象名
  2. 属性
  3. 操作

类的初步认识

类的基本数据类型

基本数据类型 名称 大小/字节
bool 布尔型 1
char 字符型 1
int 整数型 4
float 浮点型 4
double 双精度浮点型 8

类的定义

类中的成员按 功能 划分,包括:

  1. 成员变量
  2. 成员函数

类中的成员按 访问权限 划分,包括:

  1. 公有成员
  2. 私有成员
  3. 保护成员

标识符命名规则:字母、数字和下划线的组合,大小写敏感,但不能以数字开头,也不能和系统中使用的关键字完全相同。

类是具有 唯一标识符 的实体,就是说 类名不能重复

类定义以 “;” 结束。

定义类时系统并不为类分配存储空间,而只是把类看作是一种模板或样板。

类中声明的任何成员不能使用 autoexternregister 关键字进行修饰。

类C中不能定义类C的成员变量,但可以定义类C的指针和引用。

成员函数

如果成员函数 定义 在类体 内部,则默认是 内联函数

如果成员函数 声明 在类体 内部,并加上inline关键字,然后再 类体外 给出函数定义,这样的成员函数也是内联函数。

类体外成员函数的定义的前面必须用 “类名::” 来限定:

返回值类型 类名::成员函数名(参数列表)
{
  函数体
}

类作用域运算符:::

成员函数和普通函数一样,在内存中只有一份,它可以作用于不同的对象,为类中各对象共享。

成员函数允许 重载

创建类对象的基本形式

基础形式

类名 对象名;

使用 new 运算符的形式

类名 * 对象名 = new 类名();

delete 对象名;

使用 new 形式创建对象时,返回的是一个 对象指针

使用 new 创建的对象,必须使用 delete 来撤销。

对象的引用

类名 & 对象引用名 = 对象;

对象的指针

类名 * 对象指针名 = 对象的地址;

对象的数组

类名 对象数组名[数组大小];

对象数组的下标都是从 0 开始,且对象数组名是一个 指向数组首地址的常量指针

访问对象的成员

类名 对象名;

对象名.成员变量;
对象名.成员函数(参数列表);

类名 & 对象引用名 = 对象名;

对象引用名.成员变量;
对象引用名.成员函数(参数列表);

类名 * 对象指针名 = & 对象名;

对象指针名->成员变量;
对象指针名->成员函数(参数列表);

如果是通过指针访问成员变量,使用“指针->成员名”的方式来访问对象的成员,但是指针需要初始化

p是一个指向类A数据成员的m的指针,A1是类A的一个对象,则要给m赋值的正确操作为:* A1.p = 5;

类成员的可访问范围

访问范围说明符 含义 作用
pubilc 公有的 修饰的类成员可以在程序的任务地方被访问
private 私有的 修饰的类成员仅能在本类内被访问
protected 保护的 修饰的类成员可以在本类内以及子类中被访问

只有在 类内 和在 友元函数 内才可以访问私有成员。

隐藏的作用

设置私有成员的机制叫做 隐藏

目的:强制对私有成员变量的访问一定要通过公有成员函数进行。

好处:如果以后修改了成员变量的类型或属性,只需要修改成员函数即可。

你可能感兴趣的:(面向对象的基本概念)