面向对象的程序设计

 

面向对象的程序设计Object Oriented Programming,简称OOP,亦有译为物件导向),指一种程序设计范型,同时也是是一种程序开发的方法论。它的最大特点是能够大幅度的提高软件项目的成功率,减少日后的维护费用,提高软件的可移植性和可靠性。

它的特征主要包括以下几个方面:

  • 对象的使用—对象的概念被广泛的使用在从建模到构建程序的各个方面。
  • 抽象化—将各种独立的操作分解成为可以用命名区分的单元。
  • 封装性—不同的操作具有不同的作用范围。
  • 多态性—对于不同数据类型的相似操作使用相同的命名。
  • 继承性—类可以被继承,从而实现不同层次的对象。

抽象化是面向对象的一个重要特征但是并不是它所独有的特征。重用是面向对象的一个重要优点。

当我们提到面向对象的时候,它不仅指一种程序设计方法。它更多意义上是一种程序开发范式。在这一方面,我们必须了解更多关于面向对象的分析(Object Oriented Analysis,简称OOA)和面向对象的设计(Object Oriented Design,简称OOD)方面的知识。

基本理论

继承性

可以把同一派生分枝的通用性方法分配在合理的祖先类层次上。父类的属性,子类会无条件继承。

封装性

隐藏具体实现的细节,有利于程序的局部化,进而减小程序出错的可能性和增强可维护性。

多态性

为后代类行为方法的变异提供了一种可能性,即使是从同一祖先派生下来的行为,也可以发生差异化,从而增强了系统的灵活性。

OOP与面向对象的语言

支持部分或绝大部分面向对象特性的语言即可称为基于对象的或面向对象的语言。 早期,完全面向对象的语言主要包括smalltalk等语言,目前较为流行的语言中有JAVAC#Eiffel等。随着软件工业的发展,比较早的面向过程的语言在近些年的发展中也纷纷吸收了许多面向对象的概念,比如C->C++,BASIC->Visual Basic->Visual Basic.NETPascal->Object PascalAda->Ada95

posted @ 2007-01-18 17:07  '.Elvis.'  阅读(185)  评论(0)    收藏  举报