C++语言的三大特性封装、继承和多态

来源:互联网 发布:智能课堂教学软件 编辑:程序博客网 时间:2024/05/02 16:45

以下是我自己的理解,语言没有课本上那么严谨,相互学习。

1、封装

封装是通private、public、protected来实现的,来设置一个类内部各个成员的权限。

通过封装就是可以把一些函数内部实现的过程和一些数据包装起来,只把函数的接口和函数如何使用告诉用户,这样就可以把使用者和开发者相互独立起来,这样方便开发人员对程序进行维护,也容易实现模块化。

2、继承

可以使用现有类的功能,而无需重新编写现有的类,就可以在现有类的基础上进行扩展。

继承有基类和派生类的概念,C++可以实现多重继承。

3、多态

  定义了一个接口,可以实现多种方法,多态允许基类和派生类实现相同的函数,

  多态是通过虚函数来实现的,允许基类的指针指向派生类的对象,等程序真正运行的时候,才知道调用时哪个类的成员函数。

  多态与非多态的实质区别就是函数地址是早绑定还是晚绑定。如果函数的调用,在编译器编译期间就可以确定函数的调用地址,并生产代码,是静态的,就是说地址是早绑定的。而如果函数调用的地址不能在编译器期间确定,需要在运行时才确定,这就属于晚绑定。

  重载和多态区别: 
   
  重载是函数名相同,函数参数个数不同,或者参数的类型不同的几个函数。

  多态是基类和派生类的函数名、函数参数完全相同的两个函数。

0 0