|
@@ -1,116 +0,0 @@
|
|
|
-//4、类和对象
|
|
|
-
|
|
|
-//C++面向对象的三大特性为 : 封装 、 继承 、 多态
|
|
|
-//C++认为万事万物都皆为对象 , 对象上有其属性和行为
|
|
|
-
|
|
|
-//例如 :
|
|
|
-
|
|
|
-//人可以作为对象 , 属性有姓名 、 年龄 、 身高 、 体重 ... , 行为有走 、 跑 、 跳 、 吃饭 、 唱歌 。。。
|
|
|
-//车也可以作为对象 , 属性有轮胎 、 方向盘 、 车灯 ... ,行为有载人 、 放音乐 、 空调
|
|
|
-//具有相同性质的对象 , 我们可以抽象为类 , 人属于人类 , 车属于车类
|
|
|
-
|
|
|
-//4.1封装
|
|
|
-//4.1.1封装的意义
|
|
|
-//封装是C++面向对象三大特征之一
|
|
|
-//封装的意义 :
|
|
|
-//⚪将属性和行为作为一个整体 , 表现生活中的食物
|
|
|
-//⚪将属性和行为加以权限
|
|
|
-
|
|
|
-//封装的意义 :
|
|
|
-// 在设计累的时候 , 属性和行为写在一起,表现事物
|
|
|
-// 语法 :class 类名 { 访问权限 : 属性 / 行为 };
|
|
|
-
|
|
|
-
|
|
|
-#include <iostream>
|
|
|
-
|
|
|
-//实例1 : 设计一个园类 , 求圆的周长
|
|
|
-//求圆周长的公式 : 2 * Π * r
|
|
|
-
|
|
|
-const double Π = 3.14;
|
|
|
-
|
|
|
-//class 代表设计一个类 , 类后面紧跟着的就是类名称
|
|
|
-class Circle
|
|
|
-{
|
|
|
- //访问权限
|
|
|
- //公共权限
|
|
|
-public:
|
|
|
-
|
|
|
- //属性
|
|
|
-
|
|
|
- int m_r;
|
|
|
-
|
|
|
- //行为
|
|
|
- //获取圆的周长
|
|
|
- double calculateZC()
|
|
|
- {
|
|
|
- return 2 * Π * m_r;
|
|
|
- }
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-
|
|
|
-//示例2 :设计一个学生类,属性有姓名和学号 , 可以给姓名和学号赋值 , 可以显示学生的姓名和学号
|
|
|
-
|
|
|
-class Student
|
|
|
-{
|
|
|
- //权限
|
|
|
-public:
|
|
|
-
|
|
|
-
|
|
|
- //类中的 属性 和 行为 我们统称为 成员
|
|
|
- //属性 成员属性 成员变量
|
|
|
- //行为 成员函数 成员方法
|
|
|
-
|
|
|
- //属性
|
|
|
- std::string m_Name; //姓名
|
|
|
- int m_ID; //学号
|
|
|
-
|
|
|
- //行为
|
|
|
- //显示姓名和学号
|
|
|
- void showStudent()
|
|
|
- {
|
|
|
- std::cout << "姓名 :" << m_Name << "学号 :" << m_ID << std::endl;
|
|
|
- }
|
|
|
- //给姓名赋值
|
|
|
- void setName(std::string name)
|
|
|
- {
|
|
|
- m_Name = name;
|
|
|
- }
|
|
|
- //给学号赋值
|
|
|
- void setID(int ID)
|
|
|
- {
|
|
|
- m_ID = ID;
|
|
|
- }
|
|
|
-};
|
|
|
-
|
|
|
-int main1()
|
|
|
-{
|
|
|
- //通过圆类 , 创建一个具体的圆(对象)
|
|
|
- //实例化 (通过一个类 创建一个对象的过程)
|
|
|
- Circle c1;
|
|
|
- //给圆对象 的 属性进行赋值
|
|
|
- c1.m_r = 10;
|
|
|
-
|
|
|
- std::cout << "圆的周长为 : " << c1.calculateZC() << std::endl;
|
|
|
-
|
|
|
- //创建一个具体的学生 实例化对象
|
|
|
- Student s1;
|
|
|
- //给s1对象 进行属性赋值操作
|
|
|
- //s1.m_Name = "张三";
|
|
|
- s1.setName("张三");
|
|
|
- //s1.m_ID = 1;
|
|
|
- s1.setID(1);
|
|
|
- s1.showStudent();
|
|
|
- //显示学生信息
|
|
|
-
|
|
|
- Student s2;
|
|
|
- s2.m_Name = "李四";
|
|
|
- s2.m_ID = 2;
|
|
|
- s2.showStudent();
|
|
|
-
|
|
|
-
|
|
|
- system("pause");
|
|
|
-
|
|
|
- return 0;
|
|
|
-
|
|
|
-}
|