原帖 | Jack | 2025-11-10 16:44 | 👍1 | 阅读约1
到底是谁把面向对象编程搞得这么复杂?
就拿人类社会来说,最开始没有专门的餐厅,医院,学校。建立餐厅,医院,学校这些机构,分类各个具体的社会作用到对应的机构里,就是定义对象的过程(接口),然后你真的去建了一个医院,这就是创建对象的过程(实例化),对象里面的被处理服务的人和机构的作用就是数据和方法。
程序呢?也一样啊,你归类分类所有的程序模块,用一个个结构体去定义这个对象,包含这个程序的数据和功能(函数),就是面向对象最本质的概念。
面向过程呢?原始人你见过吗,吃喝拉撒睡生老病死教育都在自己那个村,自己一个人就解决了,但是很粗糙。
至于那些高档词汇:
继承:新医院可以继承“医院类”的基础设施,比如挂号系统;
多态:不同医院可能用不同的收费系统,但接口一致;
封装:外面的人不能直接操作病历,只能通过前台;
抽象:我定义一个“医疗机构基类”,医院、诊所都能继承。
面向对象只是“用现实世界的分工方式”去组织代码。
相关笔记