6
回答
面向对象这样理解对不?
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

正在看《松本行弘的程序世界》这本书,说到面向对象这块的时候,他说他以前解释的面向对象有个误解:

对象是对现实世界中具体事物的反映,继承是对物体分类的反映。
我感觉这个解释不追求局部的话是正确的,不知道大家的见解是什么,到底那些地方误解了

<无标签>
举报
北落
发帖于6年前 6回/400阅
共有6个答案 最后回答: 6年前

      个人觉得还是看程序设计了.现实说的那么抽象完美,等万一程序语言实现不了就傻了.网上有人拿正方形和长方形举例,就很能说明问题,前者不适合作为后者的子类,而我们感性上会觉得这和 鸟与麻雀没什么区别.

       个人觉得类是对一种数据结构和该数据结构的操作方法 的封装,对象是某块数据结构,而继承是一系列类的层次, 每个层次的一部分数据,方法,操作or接口的实现都可以直接复用上一层的.  PS:没提多态是因为觉得多态不一定要求继承.C++模板类就能实现泛型的多态,以及未来语言发展可能出现的各种奇巧淫技都可能 无需继承而实现多态.

    从这个意义上说, 正方形和长方形就不应该是继承关系,正方形无需长方形的数据结构和操作方法.回到引用的那句话,  正方形分类上属于长方形,但继承不适合用来表达这个分类.分类是大自然的事情,继承是程序代码的事情(语言模型总是必须要让编译器能实现能看懂),强扭一起总是不客观的.

顶部