对象

来自站长百科
跳转至: 导航、​ 搜索

对象,信息技术名词,某种计算机语言中对于某特定程序的函数,所谓数据封装就是将一组数据与这组数据有关操作组装在一起,形成一个实体,这个实体就是对象。

简介[ ]

在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是人和有明确边界和意义的东西。   

对象是实例化。一些对象是活的,一些对象不是。 比如这辆汽车、这个人、这间房子、这张桌子、这株植物、这张支票、这件雨衣。 概括来说就是:万物皆对象。   

面向对象(ObjectOriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统交互式界面应用结构应用平台分布式系统网络管理结构CAD技术人工智能等领域。   

在ASP动态网页中,对象是一个抽象的概念,是要操作的目标。比如,在现实生活中,电脑就是我们搜寻资料的一个对象,他具有外观、操作系统、价格等等特点,这在对象概念中被称为属性,而利用这个电脑玩游戏、看电影、查找资料等用途,这就对应于对象里的方法,另外,主板、CPU、显卡、键盘等等组件,我们可以称作对象的集合。   

ASP动态网页中,对象的特点归结起来有三个:属性方法集合

面向对象概述[ ]

(1)类   

具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是,类的具体化就是对象,也可以说类的实例是对象。    类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。   

类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。   

(2)类的结构   

在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。   

①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。   

②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。   

(3)对象   

对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。   

(4)对象的状态和行为   

对象具有状态,一个对象用数据值来描述它的状态。   

对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。   

对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中   

(5)消息和方法   

对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。

面向对象特点[ ]

 (1)对象唯一性   

每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。   

(2)分类性   

分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。   

(3)继承性   

继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。   

继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。   

在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。   

在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。   

在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。   

采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。   

(4)多态性(多形性)   

多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。   

多态性允许每个对象以适合自身的方式去响应共同的消息。   

多态性增强了软件的灵活性和重用性。

面向对象要素[ ]

(1)抽象   

抽象是指强调实体的本质、内在的属性。在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为。使用抽象可以尽可能避免过早考虑一些细节。   

类实现了对象的数据(即状态)和行为的抽象。   

(2)封装性(信息隐藏)   

封装性是保证软件部件具有优良的模块性的基础。   

面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。   

对象是封装的最基本单位。封装防止了程序相互依赖性而带来的变动影响。面向对象的封装比传统语言的封装更为清晰、更为有力。   

(3)共享性   

面向对象技术在不同级别上促进了共享:   

①同一类中的共享   

同一类中的对象有着相同数据结构。这些对象之间是结构、行为特征的共享关系。   

②在同一应用中共享   

在同一应用的类层次结构中,存在继承关系的各相似子类中,存在数据结构和行为的继承,使各相似子类共享共同的结构和行为。使用继承来实现代码的共享,这也是面向对象的主要优点之一。   

③在不同应用中共享   

面向对象不仅允许在同一应用中共享信息,而且为未来目标的可重用设计准备了条件。通过类库这种机制和结构来实现不同应用中的信息共享。   

(4).强调对象结构而不是程序结构


相关条目[ ]

参考来源[ ]