C++ 中抽象类和接口的区别
1、纯虚函数
纯虚函数是在基类中声明的虚函数,它在基类中没有定义,要求任何派生类 都要定义自己的实现方法。
在基类中定义纯虚函数的方法:
virtual int func()= 0;
2、抽象类
带有纯虚函数的类称为抽象类。抽象类是一种特殊的类.
3、接口
类中没有定义任何的成员变量
所有的成员函数都是公有的
所有的成员函数都是纯虚函数
接口是一种特殊的抽象类(一个类中出现了纯虚函数,那他就是抽象类)
4、抽象类和接口的作用
抽象类:为了继承,为了扩展,抽象类用于代码复用。
接口类:是一种规则,一旦实现了这个接口,就要实现这个接口中所有方法。接口用于抽象事物的特性。