C++面向对象----类
类的定义
我们把具有相同属性和方法的一类事物统称为一个类,这是个人的便于理解的定义(并非官方定义),类常常抽象的看作一类事物,类中包含属性和方法,而属性通常是一个个变量例如int,double,string等等用于储存是事物的特征,方法通常是一个个函数,事物通过这些函数来完成相应的功能。
举个栗子:
class Dog
{
public:
string color;
double weight;
string age;
public:
void bark()
{
cout<<"汪汪汪!\n";
}
};
这里我们把狗抽象为一个类,狗所具有的属性为color(狗的颜色),weight(狗的体重),age(狗的年龄),这些属性描述了狗的特征,然后具有一个方法bark(),来完成狗叫这一功能。
知识点回顾
当然这里的所有属性和方法都是可以设置访问权限的用访问修饰符来完成(也就是public,private,protected),如果我们定义变量和函数的时候不加修饰符,就想下面这样
class Dog
{
string color;
double weight;
string age;
void bark()
{
cout<<"汪汪汪!\n";
}
};
此时修饰符会默认为(private),这也许和C++的安全性相关。
那么private,protected,public这三个修饰符的区别是什么呢?
首先来讲解最开放的public
public修饰的属性和方法1.可以被继承2.可以被基类对象或子类对象直接访问3.安全系数最低(如果不了解继承)请**出门左转,(如果不清楚对象)请出门右转!**
protected修饰的属性和方法1.可以被继承2.可以被基类对象或子类对象通过类的成员函数间接访问,但是不能被直接访问3.安全系数较高
private修饰的属性和方法1.不能被继承2.不能被基类对象直接访问,可以通过成员函数间接访问3.安全系数最高
** 如有不对的地方或者不清楚的地方,欢迎评论和指正,谢谢!**