面向对象编程基础

面向对象编程基础

ID:47003458

大小:633.00 KB

页数:61页

时间:2019-12-03

面向对象编程基础_第1页
面向对象编程基础_第2页
面向对象编程基础_第3页
面向对象编程基础_第4页
面向对象编程基础_第5页
资源描述:

《面向对象编程基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章面向对象编程基础教学要求深入理解面向对象概念掌握类的声明、成员、构造函数和析构函数掌握方法的声明、参数、重载与覆盖掌握属性的声明教学重点类和对象构造函数重载方法的声明、参数、重载与覆盖教学难点对类和对象的理解类的声明、方法的声明及参数学时分配:6+6教学内容基本概念类的定义以及对象的创建构造函数和析构函数方法的参数方法的重载属性基本概念面向对象程序设计(OOP)方法强调直接以问题域中的事物为中心来思考和认识问题,并按照这些事物的本质特性把它们抽象为对象,以作为构成软件系统的基础对象:是系统中用来

2、描述客观事物的一个实体,它有一组属性(用来描述对象静态特征的数据项)和一组行为(用来描述对象动态特征的数据项)构成,是类的特定实例,对象具有下列特征:标识(Identity):对象各不相同行为(Behavior):对象可以执行的操作状态(State):对象可以存储一些随时间变化的信息类:是具有相同属性和服务的一组对象的集合,它为属于该类的所有对象提供了抽象的描述,其内部包括属性和行为两个主要部分。一个属于某类的对象称为该类的一个实例。面向对象程序设计方法的核心是类,利用它可以实现对数据和方法的封装,通

3、过类的继承,能够实现对问题的深入抽象描述。类相当于一种用户自定义的类型,它和前几章提到的基本类型,如浮点型、整形,有类似的特征。实例化:对象必须实例化后才能使用类与对象的关系示意图12324512245对象对象类抽象抽象是面向对象程序设计的基本原则之一,抽象与具体相对应。一个汽车的型号就是抽象,它代表了某个汽车的一切属性,包括最大时速,车身长度,全车净重等。抽象就是对具体事物的概括。抽象是一种从一般的观点看待事物的方法,它要求程序员集中于事物的本质特征,而不是具体细节或具体实现。面向对象鼓励程序员以抽

4、象的观点看待程序,即程序是一组抽象的对象组成的;另一方面又可以将对象的共同特征进一步抽象出来,从而形成“类”的概念。封装所谓“封装”,就是用一个框架把数据和代码组合在一起,形成一个对象。遵循面向对象数据抽象的要求,一般数据都被封装起来,也就是外部不能直接访问对象的数据,外部能见到的只有提供给外面访问的公共操作(也称接口,对象之间联系的渠道)。在C#中,类是支持对象封装的工具,对象则是封装的基本单元。封装的对象之间进行通讯的一种机制叫做消息传递。消息是向对象发出的服务请求,是面向对象系统中对象之间交互的

5、途径。消息包含要求接收对象去执行某些活动的信息,以及完成要求所需的其他信息(参数)。发送消息的对象不需要知道接收消息的对象如何对请求予以响应。接收者接收了消息,它就承担了执行指定动作的责任,作为消息的答复,接收者将执行某个方法,来满足所接收的请求。继承继承是面向对象编程技术的一块基石,通过它可以创建分等级层次的类。例如,创建一个汽车的通用类,它定义了汽车的一般属性(如:车轮、方向盘、发动机、车门)和操作方法(如:前进、倒退、刹车、转弯等)。从这个已有的类可以通过继承的方法派生出新的子类,卡车、轿车、客

6、车等,它们都是汽车类的更具体的类,每个具体的类还可增加自己一些特有的东西。继承继承是父类和子类之间共享数据和方法的机制,通常把父类称为基类,子类称为派生类。一个基类可以有任意数目的派生类,从基类派生出的类还可以被派生,一群通过继承相联系的类就构成了类的树型层次结构。如果一个类有两个或两个以上直接基类,这样的继承结构被称为多重继承或多继承。在现实世界中这种模型屡见不鲜,如:一些组合功能的产品像沙发床,它既有沙发的功能,又有床的功能,沙发床应允许同时继承沙发和床的特征。继承尽管多继承从形式上看比较直观,但

7、在实现上多继承可能引起继承操作或属性的冲突。当今的很多语言已不再支持多继承,C#语言也对多继承的使用进行了限制,它通过接口来实现。接口可以从多个基接口继承。接口可以包含方法、属性、事件和索引器。一个典型的接口就是一个方法声明的列表,接口本身不提供它所定义的成员的实现。所以接口不能被实例化,一个实现接口的类再以适当的方式定义接口中声明的方法。多态性多态性就其字面上的意思是:多种形式或多种形态。在面向对象编程中,多态是指同一个消息或操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在面向对象编程

8、中,多态性有两种,一种是静态多态,一种是动态多态。当在同一个类中,直接调用一个对象的方法时候,系统在编译时,根据传递的参数个数、参数类型以及返回值的类型等信息决定实现何种操作,这就是所谓的静态绑定。当在一个有着继承关系的类层次结构中,间接调用一个对象的方法时候,也就是说,调用经过基类的操作,这种调用只有到系统运行时,才能根据实际情况决定实现何种操作,这就是所谓的动态绑定。C#支持这两种类型的多态,在实现多态上C#可以有几种方式:接口多态性、继承多态性、通

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。