C++的三大特性,简易说明

C++作为一种面向对象的编程语言,其三大特性分别为

封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism)。

1、封装(Encapsulation)

它指的是将数据(属性)和操作数据的方法(函数)封装在一个类中,形成一个独立的单元。

封装通过访问控制符(如public、protected、private)来实现。

public成员可以在类外被访问、

protected成员只能被类本身及其派生类访问、

private成员则只能在类内部被访问。

封装的主要目的是隐藏对象的内部实现细节,只对外提供公共的接口。

通过封装,可以保护对象的数据不被随意访问和修改,从而提高了程序的安全性和可维护性。

生活事例

我有一个电视遥控器。遥控器上有很多按钮,如电源键、音量键、频道键等,但我不需要知道遥控器内部是如何工作的,比如信号是如何传输到电视上的,或者电池是如何供电的。你只需要知道如何使用这些按钮来控制电视。

2、继承(Inheritance)

它允许一个类(子类或派生类)继承另一个类(父类或基类)的属性和方法。

通过继承,子类可以扩展或修改父类的功能,同时保持与父类的关系。

C++支持单继承、多重继承、多层继承。

在单继承中,一个子类只能继承一个父类;如男人类继承人类。

在多重继承中,子类可以继承父类,孙子类可以继承子类;

如程序员类继承工人类,工人类继承人类。

在多层继承中,一个子类可以同时继承多个父类。

如男程序员同时继承男人类和工人类。

继承不仅减少了代码冗余,还使得程序结构更加清晰、逻辑更加简洁。

生活事例

如我有一个学生证,这个学生证不仅包含了我的个人信息(如姓名、学号等),还附带了图书馆借阅证的功能。这里的图书馆借阅证功能就可以看作是继承自另一个“借阅证”类的特性。

3、多态(Polymorphism)

它指的是同一个接口(操作或函数)可以作用于多种类型的对象上,并产生不同的行为。

多态分为静态多态和动态多态两种:

  • 静态多态:主要通过函数重载和运算符重载实现。在编译时,编译器根据函数的参数类型或数量来确定调用哪个函数。
  • 动态多态:主要通过虚函数实现。在运行时,根据对象的实际类型来确定调用哪个函数。这要求基类中有虚函数,并且派生类重写了这些虚函数。

多态的存在大大提高了程序的扩展性和可维护性

通过多态,可以在不修改现有代码的情况下,增加新的功能或修改现有功能

生活事例:在动物园里,可能会看到各种各样的动物,如猫、狗、羊等。它们都可以发出叫声,虽然都是“发出叫声”这个动作,但不同动物发出的声音不太相同。如狗是“汪”、猫是“喵”、羊是“咩”,这就是多态的一个体现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值