面向对象编程1.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:4 大小:29KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

面向对象编程1.doc

面向对象编程1.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

面向对象编程安徽省国税局信息中心赵为民目前仍然没有精确的定义。各种定义都是从不同角度去描述。一、面向对象编程(ObjectOrientedProgramming)的基本思想与函数式程序设计(functional-HYPERLINK"http://www.itisedu.com/phrase/200604232129205.html"\t"_new"programming)和逻辑式程序设计(logic-programming)所代表的接近于机器的实际计算模型所不同的是,OOP几乎没有引入精确的数学描叙,而是倾向于建立一个对象模型,它能够近似的反映应用领域内的实体之间的关系,其本质是更接近于一种人类认知事物所采用的哲学观的计算模型。面向过程编程要求从计算机角度,而不是从待解决问题角度去思考。程序员必须在解决空间与待解决空间建立映射关系。面向对象编程则让程序员在待解决问题空间上建模。在OOP中,对象作为计算主体,拥有自己的名称,状态以及接受外界消息的接口。在对象模型中,产生新对象,旧对象销毁,发送消息,响应消息就构成OOP计算模型的根本。1.发展历史20世纪60年代挪威计算中心发明Simula语言。20世纪70年代AlanKay在施乐组建的研究小组发明了Smalltalk语言1986年第一次面向对象编程大会开幕。1994年贝尔实验室研究员BjarneStroustrup发明了C++.2.主要概念组件:数据和功能一起在运行着的计算机程序中形成的单元,组件在OOP计算机程序中是模块和结构化的基础。类是同类型概念的抽象。对象是类的具体实例。对象是服务提供者。对象有状态、行为、标识。抽象性:关注主要信息的能力。封装:也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每HYPERLINK"http://www.itisedu.com/phrase/200603090857555.html"\t"_new"类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。封装蕴涵着另一概念,实现隐藏。多态性这也是消息传递和过程调用的区别所在。消息传递有一个指定的接受者。不同接受者的解释—指响应消息所执行的方法集合会有所不同。多态性所依赖的实现技术为延期绑定。即在方法调用时才决定该消息的接受者。而在传统的过程调用中,在编译是就绑定了名称和方法代码段。:组件的引用和类集会涉及到其它许多不同HYPERLINK"http://www.itisedu.com/phrase/200603051002565.html"\t"_new"类型的组件,而且引用组件所产生的结果得依据实际调用的类型。继承性:允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。3.程序设计总结面向对象编程把程序看成是一系列连接松散的代理集合。这些代理被称为对象。每一个对象都负责特定的任务。通过对象间的相互作用推动计算的执行。因此在某种意义上编程就是模型整体的仿真设计面向对象的程序就像组织由个体组成的团体,每一个团体成员都承担一定的责任,团体的总目标有赖于团体各个成员的工作,以及成员之间的相互合作。对象是状态(数据值)和行为(方法)的封装体,对象在许多方面类似于模块或抽象数据类型。对象的行为是由对象的类决定的。每一个对象都是某个类的实例。同一个类的所有实例都能对相似的请求做出相似的响应(调用同一个方法)对象通过调用方法响应消息在面向对象的世界里术语消息就是指调用某个类的某个方法。换句话说调用某个类的某个方法就是给某个类发送特定消息,展示它的行为。对消息的解释由对象决定。不同类的对象可以有不同的解释。对象和类增加了继承这个概念,扩展了抽象数据类型概念。类可以组织成一棵层次继承树。树底层的类可以访问或使用树上层类有关的数据和行为。称为从父类中继承了自己的行为通过减少软件组件间的相互依赖,可以实现可重用软件系统。这些组件就可以作为独立的单元来创建并测试。