第1章 面向对象的编程

第1章 面向对象的编程

1.1.1面向功能的软件设计的局限性

软件的核心是功能,而需求又非常容易改变,所以围绕功能设计软件,会比较难于应对需求的变更,维护成本会比较高。

1.1.2面向对象的模块化

对象指的是人能够识别的东西,从你手里的书,随身的笔记本,到桌子,手表,摩托,机车,收据,工资单,图书馆和区政府等,这些都是对象。

对象具有属性,能接收消息并且处理消息。

属性指的是对象的性质和所具有的消息。例如汽车能装多少人,是什么颜色的,行驶速度是多少,属性也称为状态。

消息是指对象和对象之间的信息传递

面向对象编程指的是:以对象作为程序的基本模块(而不是功能模块)来进行软件的分析,设计和开发的一种思考方法。

1.1.3消息传递

消息是对象之间通信的唯一手段,所有通信和控制都是通过收发消息完成的。

对象收到消息后,会对消息进行解析,完成相应的处理并返回结果。

具体的处理方法和这个对象的内部实现相关,叫做方法

发送消息的对象称为发送者,收信的对象称为接收者。

1.1.4模块的抽象化

综上所述,具备一下特征的东西可称为对象

    可人为分辨出这是一个东西

    拥有属性

    能够向其他对象发送消息

    能够接收消息,并作出相应的处理

    消息的处理是通过对象的方法完成的

这种使用对象的概念对问题进行抽象化的方法称为面向对象。

使用对象的概念来分析如何做一个app叫做面向对象的分析(OOA)。

以对象为基础来设计软件叫做面向对象的设计(OOD)

编程过程中使用面向对象的概念叫做面向对象的程序设计(OOP)

抽象画指的是尽可能地不考虑相关细节,只关系对象的核心和本质,通过抽象可以用简单概念的集合来描述一个复杂的对象。

万物皆对象


1.1.5对象的属性

从属性的角度来重新认识对象的概念,对象拥有属性,对象的属性一般被定义为指向其他对象的指针,这个指针叫做实例变量,变量可能指向一个空的对象,变量也可以是数值类型

1.1.6类

把具备相同变量和方法的对象提炼出来,形成模版,用模版创建各种具体的对象,这个模版就叫做类 class

类包含了一组对象的共有特性,类舍弃了每个具体对象的各种细节,把所有对象都具备的共同部分抽象出来,所有类的对象都共享该类定义的方法和变量,不同的差异就是各种变量值的不同。

用类创建对象的过程叫做实例化,生成的对象叫做实例对象。

你可能感兴趣的:(第1章 面向对象的编程)