OO中的普遍性和抽象性

概要

       OO所要解决的事情首先是找出事物的共性、分离事物,然后是抽象不同事物的共同行为模型,通过行为来聚合某些事物,通过某些机制来简化事物之间的关联。这也就是OO方法论中的普遍性和抽象性。本文简单地描述了OO的普遍性和抽象性。

       关键词 OO,抽象性,具体,普遍性

目录

概述... 1

OO基本特点... 1

OO普遍性... 2

OO抽象性... 2

结束语... 2

概述

当软件越来越复杂,面向过程的方法论无以承受这种复杂的时候,面向对象(OO)的方法论出现了。软件的复杂度可表现为两个方面,一个是事物的繁多,二个是事物之间的联系错综复杂。OO所要解决的事情首先是找出这些事物的共性、分离事物,然后是抽象不同事物的共同行为模型,通过行为来聚合某些事物,通过某些机制来简化事物之间的关联。这也就是OO方法论中的普遍性和抽象性。

OO基本特点

         OO是一种视事物为程序世界中的对象的方法论,它使用GeneralizationAbstraction来归纳和抽象事物的本质特征和共同行为。OO有三个基本特点,那就是封装、继承、多态。封装是对事物的变化的封装,这种变化是使软件趋于复杂的根本原因;继承是处理事物的普遍性和特殊性的一种机制,它更多的注重的是对事物的固有属性的处理;多态用于处理同类事物的不同的行为特征。

OO普遍性

         世界中的事物具有普遍性和特殊性。如哲学中提到的“黑马和白马都是马“,在这句话中,”马“相对”黑马“或/和”白马“具有普遍性,而”黑马“或/和”白马“相对“马”则是特殊的。因此使用OO分析某个系统的时候,我们需要找出这种普遍和特殊。在一般的情况下,特殊的事物相对普遍的事物的区别在于本质特征的不同。如“马“具有”颜色“这一本质特征,”黑马“和”白马“就是“颜色”特殊化了的马。这也就是OO中的继承。因此,继承通过事物的本质特征来区分普遍性和特殊性的事物,这种本质特征包括事物的固有属性也包括事物的固有行为。从某种程度上来说,这也是一种抽象。不过这种抽象是基于事物的本质特征的。

OO抽象性

         OO的世界中,抽象上必不可少的,它往往表现为对事物行为的抽象。而这种行为的抽象主要表现在两个方面:同类事物的不同行为的抽象;不同事物的相同行为的抽象。同类事物的不同的行为特征,我们很容易进行区分,因为人们一直都在关注这一点。不同事物的相同行为往往都是很隐蔽的,需要我们去努力挖掘,比如说卵生动物都是产“卵”来繁育后代的,这是动物学家通过很久的探索和研究才得出的结论。

结束语

因为事物的行为可能因为这样和那样的原因,它们很容易发生变化。所以我们需要通过OO的封装来隔离这种变化。“变化”是一个开放性的词语,它可以用“形容词”来修饰,也可以给它添加“宾语”。往往,在解决具体问题的时候,我们谈论的变化都是具体的。而这种具体的变化是存在共性的,因为它们都是变化。

因此,我们需要通过抽象事物的不同行为,通过OO的封装来隔离这些变化。而对于变化的普遍性和特殊性,我们可以使用OO的继承来进行处理。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值