《JAVA编程思想》阅读笔记之对于对象的理解(1)

来源:互联网 发布:男朋友活好体验知乎 编辑:程序博客网 时间:2024/05/13 05:51

一种面向对象的语言——java,刚接触java的时候就听到了一个这样的例子:什么是面向对象,那先来举个例子,我早上醒来,我起来之后先上了个厕所,我上完厕所之后开始穿衣服、洗漱,然后 我吃早饭。这个“我”,就是对象,面向“我”,就是面向对象。第一次听到这个例子,就明白了这个例子想说明的问题,但是也只是意会的程度。直到我听到了另外的一种解释。首先来聊聊为什么要编程,有一个问题出现了,要写一段程序来解决这个问题。那就会有问题空间(既:出现问题的部分),与解决问题空间(解决问题的部分)。这两个空间内,都会有一些问题要素,例如洗漱穿衣吃饭这些要素。而这些要素可以看作一个整体中的一部分,一部分细节,这个整体,就称之为对象。总结起来可以表示为:问题空间中的元素及其在解空间中的表示称为“对象”。而其中有几个特性,需要细细体会:
1.万物皆为对象。对象可以看作是一个可以存储任何东西,实现任何操作的媒介,可以将任何问题空间,解空间涉及到的东西看作是对象的一个属性或者一种动作。
2.程序是对象的集合,他们通过发送消息,来告知彼此所要做的事情,从而完成特定的功能。想要使用一个对象,要给该对象发送一个消息,想让一个对象去做任何的事情,也要给它发送一个消息。任何的操作。都可以看作是消息,在对象之间传递的结果。
3.每个类都有其所属的类型。既,任何类都可以将其看作是一个类型中的某一个具体的个体。
4.某一特定类型的所有对象,都能可以接受同样的消息。首先找到一个特定的类型,比如:几何图形。圆形,正方形,椭圆,都可以看作是几何类型的对象。所以,几何图形能做的事情,能接受的消息,这些图形也能够接收,能够做。
每一个对象都可以看作是一个服务提供者,将自己所具备的能力,所能完成某一项任务的能力,提供给别人。所以,也可以认为每一个对象都都有一个接口。每一个对象可以实现特定的功能。而别的对象可以通过给它发消息(调用该对象的方法),让它去做相应的事情。可以看作是,调用了该对象的接口,使其进行活动。定义一个对象,既:定义了一个或多个功能功能的实现。有一部分的调用者,只需要调用其中的一部分功能即可。其余的部分可能与他们没有关系。然而为了不让这些用不到的功能对他们造成影响,设置了这些功能对于他们是不可见的。我看不到的东西,你即使 更改了,对我也不应该有影响——隐藏一部分实现,只提供指定的服务给特定的群体。创建一个对象的开销实在不小,所以对象的复用至关重要。组合的想法应运而生:将一个对象看作是另外一个对象的一个属性。能够这么做,基于上文提到的对象的一个属性:万物皆为对象,换一种理解方式:对象中可以包含万物,由任意结构,任意成份所组成的事物,都可以看作是对象。既:将一个对象看作是另外一个对象的一个成员属性的思想——组合。

0 0
原创粉丝点击