C++——封装、继承、多态

三大特征

三大特征包括:封装、继承、多态。
封装可以隐藏实现细节,使得代码模块化;
继承可以扩展已存在的模块,它们目的都是为了代码重用;
多态则是为了实现: 接口重用。

封装

  1. 概念:
    ①:该隐藏的数据私有化,该公开的公有化(接口)(private、public);
    ②:目的就是为了分工合作,有助于使用的方便和安全性;
    ③:防止不必要的扩展。

继承

  1. 概念:
    实现代码和数据的复用,复用的实现在已有的代码和数据的基础上扩展。
    例如:AX继承了A这个类showx的功能,又拓展了showy的特征。
#include <iostream>

using namespace std;

class A{
   
	public:
		A(){
   }
		~A(){
   }
		void showx(){
   
			cout << "xxxxxxxxxxxxxxxxxxxx" << endl;
		}

};

class AX:public A{
   
	public:
		void showy(){
   
			cout << "yyyyyyyyyyyyyyyyyyyy" << endl;
		}
};

int main()
{
   
	A a;
	a.showx();

	AX b;
	b.showx();
	b.showy();
}

  1. 继承的方式及语法:
    ①公有继承 ----------- class B:public A{…};
    父类的公有数据在子类中仍然公开
    父类的受保护数据在子类中仍然受保护
    父类的私有数据在子类中是隐藏的
    ②保护继承 ----------- class B:protected A{…};
    父类的公有数据在子类中变为受保护
    父类的受保护数据在子类中仍然受保护
    父类的私有数据在子类中是隐藏的
    ③私有继承 ----------- class B:private A{…};
    父类的公有数据在子类中变为私有
    父类的受保护数据在子类中变为私有
    父类的私有数据在子类中是隐藏的

  2. 注意:
    ①:父类中的成员在子类中的访问权限只会收缩,不会扩大,在子类中的访问属性不会超过继承方式。
    ②:所谓的继承方式就是能够提供给子类的最大访问权限,实际权限小于等于继承方式,私有的数据必然在子类中隐藏

多态

    • 6
      点赞
    • 20
      收藏
      觉得还不错? 一键收藏
    • 1
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论 1
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值