设计模式学习笔记1——类继承与接口继承比较

来源:互联网 发布:js 识别浏览器 编辑:程序博客网 时间:2024/05/17 07:20

中文版P12原文:C++中纯接口继承接近于公有继承纯抽象类,纯实现继承或纯类继承接近于私有继承。

为何C++中纯接口继承接近于公有继承纯抽象类?

首先,纯接口与抽象类都并未提供实现,而对纯接口的继承和对抽象类的继承则都是要提供实现的;

为何要公有继承?显然,一个接口,如果被私有继承了,那用户该如何来访问此接口呢?

为何纯实现继承或纯类继承接近于私有继承?

对于这个问题,于我的理解,就是为了更好的封装,以及使得继承更具有层次与条理。我们应当遵从从接口出发编程这一原则,而不是从实现出发。因此我们应该使得实现继承不能从外部直接调用,而是统一地通过接口进行调用。

以上观点仅为个人理解,欢迎多多交流