花样男子之散落的温柔:OOP思想是什么意思!!!

来源:百度文库 编辑:高考问答 时间:2024/04/29 22:34:26

OOP =Object Oriented Programming,=面向对象的程序设计

对象(Object):包含一定的数据结构和状态的实体。
操作(Operation):作用于对象的行为,如访问和处理对象的状态。
封装(Encapsulation):定义对象和操作,只提供抽象的接口,并隐藏它们的具体实现。
Ada 83 已经支持上述3个特性,因此被称为基于对象(oriented-based)的语言;但面向对象程序设计经过十年的发展, Ada95 基于上述要素又增添了以下两个 Ada83 不支持的要素:

继承(Inheritance):通过继承现有类型的性质,创建新的数据类型,而不影响原有数据类型。
多态性(Polymorphism):判定数据类型集合中各类型的区别,使程序可以按照它们的共同特性来书写。
对新特性的需求是由三份报告[Dod 1990]指出的,具体见 Ada Rantinale 的 Part Two- 4 Object Oriented Programming-- 4.1 Background and Concepts,可以更好的理解继承和多态性。

OOP 的继承从理论上讲是模仿人的思考方法,将对象分类,如:car,bus 这两个数据类型是从数据类型vehicle 继承而来的,它们作为 vehicle 的一类,自然继承了 vehicle 的特性,同时具有自身独有的特性;而 wheel 却不是 vehicle 的一类,只是 vehicle 的一个组成部份,因此不是从 vehicle 继承而来。同样,vehicle 有一些操作,如 start,reverse, car和bus也继承下来,如果必要,也可加上自己独有的操作,如 drive_at_200mph。但在实际程序中,人们往往忽视了面向对象的内涵,甚止于 C++ 这些语言玩了好几年,也只是用上了面向对象的语法,而没有形成面向对象的思考方法。

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

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

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

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

目录 [隐藏]
1 基本理论
1.1 继承性
1.2 封装性
1.3 多态性
2 面向对象的语言
3 基于类的模式
4 基于对象的模式
5 历史
6 相关书籍
7 相关内容
8 外部链接

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

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

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

[编辑]
面向对象的语言
支持部分或绝大部分面向对象特性的语言即可称为基于对象的或面向对象的语言。

早期,完全面向对象的语言主要包括Smalltalk等语言,目前较为流行的语言中有Java、C#、Eiffel等。随着软件工业的发展,比较早的面向过程的语言在近些年的发展中也纷纷吸收了许多面向对象的概念,比如C->C++,BASIC->Visual Basic->Visual Basic.NET,Pascal->Object Pascal,Ada->Ada95。

[编辑]
基于类的模式
[编辑]
基于对象的模式
[编辑]
历史
[编辑]
相关书籍
[编辑]
相关内容
[编辑]
外部链接
取自"http://zh.wikipedia.org/wiki/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1"
页面分类: 编程典范 | 面向对象的程序设计

面对对象编程的意思

OOP(Object Oriented Programming)面向对象的程序设计.