刚接触面向对象编程(Object-Oriented Programming,OOP)的时候,两个词会反复出现——“类(Class)”和“对象(Object)”。如果不先把这两个概念理清楚,后面看任何 OOP 相关的代码都可能一头雾水。
OOP 本身是一种编程范式,也可以理解成一种组织代码的思维方式。它的底层逻辑并不复杂:不要把所有代码线性地堆在一起,而是把程序拆分成一个个独立的部分,每个部分都像一个独立的“东西”,这样写出来的结构和真实世界里的组织方式就很像。所以 OOP 的本质,就是基于“对象”这一概念来构建软件。
这里顺便打消一个困惑:OOP 并不是一门具体的语言,而是一种设计思想。Java、C++、Python 这些语言都支持 OOP,但它们各自还有其他的特性。只要你在用“对象”来组织代码,就可以说你正在用面向对象的思路。
那类和对象到底是什么关系?用最简单的方式说:每个对象都是某个类的实例。类是一个蓝图,它规定了这一类东西应该有哪些属性、能做什么事;对象则是按照这个蓝图制造出来的具体存在。同一个类,可以在程序里创建出无数个对象,每个对象各自独立,但结构都遵循类的定义。
把这个思路和“模拟现实世界”对应起来就好理解了:现实里先有“汽车”这个概念(这就是类),然后才有某辆具体的车(这就是对象)。概念定义了汽车该有什么——轮子、发动机、方向盘——具体的那辆车再把这些定义填上自己的数据。OOP 就是这样把世界搬到代码里的。
所以,OOP 的核心步骤就是先设计类,再通过类来生成对象,让对象之间互相协作,完成整个程序的功能。后续你会看到,它还会带来封装、继承、多态这几个更进阶的特性,不过这些都要建立在理解“类—对象”这一层关系之上。
这篇文章先讲到这里。下一次,我们会直接把上面的概念转成代码,让你看到“类”是怎么写的,“对象”是怎么创建的。如果你觉得这一部分已经说清楚了,可以在评论区告诉我;如果有哪个点还是模糊的,也直接说出来,我会在下一篇里做更细的回复。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.