一、继承理解
好比windows窗口,每一个窗口都有关闭缩小放大等按钮,因为它们都是遵循同一个母亲继承下来的
二、核心
- 继承机制使程序员可以创建一个类的堆叠层次结构,每个子类均将继承在它的基类里定义的方法和属性。
- 什么是堆叠层次结构?
:继承原有的属性和方法,再另外增加一些属性和方法- 继承机制有什么用?
:通过继承机制,程序员可以对现有的代码进行进一步的扩展- 什么是基类?
:基类是可以派生出其他的类,也称父类或超类,比如Animal类相对于Pig类就是基类- 什么是子类?
:子类是从基类派生出来的类,比如就是Pig类(这里我都具体化了)
三、用代码解释什么是继承机制
#include <iostream>
#include <string>
using namespace std;
class Animal{
public:
void eat();
void sleep();
void drool();
private:
string mouth;
};
class Pig:public Animal
{
public:
void climb();
};
class Dog:public Animal
{
public:
void swim();
};
void Animal::eat()
{
cout<<"我正在吃饭"<<endl;
}
void Animal::sleep()
{
cout<<"我正在睡觉"<<endl;
}
void Animal::drool()
{
cout<<"我在流口水"<<endl;
}
void Pig::climb()
{
cout<<"我儿子在爬树"<<endl;
}
void Dog::swim()
{
cout<<"我女儿在游泳"<<endl;
}
int main()
{
Pig mpig;
Dog mdog;
mpig.eat();
mdog.eat();
mpig.climb();
mdog.swim();
return 0;
}
解释上面代码
1.Animal类是基类,Pig,Dog都是子类,所以Pig和Dog都具有Animal所具有的的属性和方法,而且分别具有他们自己独有的属性和方法。
例如Animal类具有的方法
例如Pig类具有的方法(具有Animal的属性和方法,但没有Dog的)
例如Dog类具有的属性和方法
2.主要继承的使用方法,在子类后面加上:public 基类名
3.子类对象在主函数中使用
同样mpig和mdog能调用的方法,也是具有Animal类的和自身的
例如mpig