首页 > 技术文章 > 再谈关于面向对象编程和函数式编程

distanceblog 2016-01-17 12:08 原文

想到一种更好的对继承的解释

现在已经确定初始化一个类即实例化一个结构体,那么这个类的一个引用即这个结构体的指针,而类的继承又表示这个类的具体化

那有就有如下这样一种表示

假如使用8位十进制来表示类指针,那么object类的指针可表示为xxxxxxxx(X表示任意数字)

继承看做对类的更加具体化也就是说。直接继承自object类的类的指针也就是具体化第一个数字比如4xxxxxxx,再继承再这个类的针对类型应该为45xxxxxx,依此类推

这也就很好解释了为什么有些类之间为什么不能转化

比如有这样:

    object->person    person->man   person->femal   

     可以object 0  = new person()  因为   xxxxxxxx 可以用1xxxxxxx表示 而反过来不能

总结起来就是说类的继承表示越来越具体,指针也就越来越被具体化,转换关系也就十分明确了

准备期末考不更crackeme

推荐阅读