面向对象程序设计基本概念(一)

227 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情

什么是对象?什么是类?什么是实体?它们之间的相互关系是怎样的?

在面向对象方法中,对象是现实世界实体或概念在计算机世界中的抽象表示,是具有唯一对象名、固定对外接口的一组变量/属性和方法的集合,是用来模拟组成或影响现实世界问题的一个或一组因素。

类定义了对象类型,包含同一类型的对象具有共同的特征与行为。使用class定义的类在程序中称为一种抽象数据类型,它是面向对象程序设计语言的基本概念。一个类在定义后,我们就可以象使用其它数据类型一样,声明该类的变量并创建该变量所指向的对象,然后通过该变量调用对象的方法实现对对象的操作。实体表示现实世界中,客观存在并可区分的事物或概念。

在面向对象的问题求解方法中,首先对现实世界的问题域进行语义抽象,从各类对象中抽象出对象类型,并得到对象类型之间的关联,形成问题的概念模型。接下来,进行概念模型到机器(程序)模型的转换得到机器世界的模型。机器模型是由计算机能够理解和处理的类构成的。将类实例化就得到了现实世界实体的面向对象的映射——对象,在程序中对对象进行操作,就可以模拟现实世界中的实体及实体之间相互作用,解决由这些实体构成的现实世界中的问题。

举例来说,我们很多人都有自行车,你的自行车就是“自行车”这类交通工具中的一个实例,即现实世界的一个实体。在机器世界中即程序中的自行车类包含了自行车都有相同的状态,例如两个轮子、脚踏板速度等,以及共同的行为,如刹车等,将自行车类实例化就得到了现实世界的自行车实体的映射——自行车对象,在程序中对这个对象进行操作,就可以模拟现实世界中的自行车与其他实体之间相互作用。