第5章 面向对象程序设计基础_第1页
第5章 面向对象程序设计基础_第2页
第5章 面向对象程序设计基础_第3页
第5章 面向对象程序设计基础_第4页
第5章 面向对象程序设计基础_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——第5章面向对象程序设计基础

第5章面向对象程序设计基础2023-11-19其次次课第三次课第四次课2023-11-262023-12-032023-12-10

基本概念

面向对象的软件开发技术是当今计算机技术发展的重要成果和趋势之一。C#是完全面向对象的程序设计语言。

类和对象是面向对象程序设计中的重要概念。封装性、继承性和多态性是面向对象的特点。本章主要介绍面向对象程序设计中的基本概念和基于C#的面向对象程序设计的方法。

2023/12/11

2

C#程序设计实用教程

5.1面向对象概述5.1.1面向对象的概念

面向对象程序设计(Object-OrientedProgramming)简称OOP技术。面向对象编程技术是计算机编程技术中一次重大的进步。在面向对象编程技术出现之前,程序的设计普遍采用的是面向过程的程序设计方法。

2023/12/11

3

C#程序设计实用教程

5.1.1面向对象的概念

OOP是一种系统化的程序设计方法,强调直接以问题域(即现实世界)中的事物为中心来考虑问题,并依照这些事物的本质特征把它们抽象为对象。OOP的主要思想是将数据及处理这些数据的操作都封装(Encapsulation)到一个称为类(Class)的数据结构中。使用这个类时,只需要定义一个类的变量即可,这个变量(Object)。通过调用对象的数据成员完成对类的使用。在这种方法下,编程人员不需要过分关注“如何做〞,而是重点关注“做什么〞。OOP编程思想较好地适应了现实世界中的问题,因而得以广泛应用。

2023/12/11

4

C#程序设计实用教程

5.1.2面向对象语言的特点

面向对象的编程方式具有继承、封装和多态性等特点。在生活中,事物有好多的相像性,这种相像性是人们理解纷繁事物的一个基础。由于事物之间往往具有某种“继承〞关系。譬如,儿子和父亲往往有大量相像之处,由于儿子从父亲那里遗传了大量特性;

(1)继承

2023/12/11

5

C#程序设计实用教程

5.1.2面向对象语言的特点

继承(inheritance)是面向对象编程技术的一块基石,通过它可以创立分等级层次关系的类。

继承是父类和子类之间共享数据和方法的机制,通常把父类称为基类,子类称为派生类。子类可以从其父类中继承属性和方法,通过这种关系模型可以简化类的设计。

2023/12/11

6

C#程序设计实用教程

5.1.2面向对象语言的特点

例如,可以将水果看作一个父类,那么水果类具有颜色属性。然后再定义一个香蕉类,在定义香蕉类时就不需要定义香蕉类的颜色属性,通过如下继承关系可以使香蕉类具有颜色属性。水果类颜色

class水果类

{Public颜色;//在水果类中定义颜色

属性}

香蕉类水果类颜色

class香蕉类:水果类{//香蕉类中其他的属性和方法}2023/12/117

香蕉类的其它属性和方法C#程序设计实用教程

5.1.2面向对象语言的特点

(2)封装

类是属性和方法的集合,为了实现某项功能而定义类后,开发人员并不需要了解类体内每行代码的具体涵义,只需通过对象来调用类内某个属性或方法即可实现某项功能,这就是类的封装。封装提供了外界与对象进行交互的控制机制,设计和实施者可以公开外界需要直接操作的属性和方法,而把其他的属性和方法隐蔽在对象内部。这样可以让软件程序封装化,而且可以避免外界错误地使用属性和方法。8C#程序设计实用教程

2023/12/11

5.1.2面向对象语言的特点

(3)多态性

类的多态(polymorph)指对于属于同一个类的对象,在不同的场合能够表现出不同的特征。

多态性主要指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同数据类型或表现出不同的行为。这使得同一个属性或行为在一般类及其各个特别类具有不同的意义。例如:某个对象,其基类为“笔〞,在调用它的“写〞方法时,程序会自动判断出它的具体类型,假使是毛笔,则调用毛类对应的“写〞方法,假使是铅笔,则调用铅笔对应的“写〞方法。9C#程序设计实用教程

2023/12/11

5.2定义类

在C#中,“类〞是一种数据结构,它可以包含数据成员(常量和字段)、函数成员(方法、属性、事件、索引器、

运算符、构造函数、析构函数)。

类是个静态的概念,假使要使用某个类,就应当定义该类的一个或多个实例,每一个实例就是一个对象。

2023/12/11

10

C#程序设计实用教程

5.2.1类的概念

类是对象概念在面向对象编程语言中的反映,是一致对象的集合。类描述了一系列在概念上有一致含义的对象,并为这些对象统一定义了属性和方法。

类是对象的抽象描述和概括。例如:汽车是一个类,只要是汽车都有车牌,颜色,车轮、车门、发动机等特性,都可以加速,刹车,转方向等行为。这是将所有的汽车进行归纳之后得出的共有的特性,但这些特性都是抽象的,十分不具体,只是用来描述一个类别,并不能具体指一辆汽车。

而具体到某辆汽车就是一个对象了,例如:车牌照为苏A2345**的黑色奥迪轿车,这就是汽车类的一个汽车对象。用具体的属性可以在汽车类中唯一确定自己,并且对象具有类的操作11C#程序设计实用教程2023/12/11

5.2.1类的概念

在C#中,所有的内容都被封装在类中,类是C#的基础,每个类通过属性和方法及其他一些成

员来表达事物的状态和行为。事实上,编写C#程序的主要任务就是定义各种类及类的各种成员。

2023/12/11

12

C#程序设计实用教程

5.2.2类的声明

简单地讲,类是一种数据结构,用于模拟现实中存在的对象和关系,包含静态的属性和动态的方法。下面来看如何声明类及其属性、方法。在声明一个类之前,需要向工程中新添加一个文件。

2023/12/11

13

C#程序设计实用教程

5.2.2类的声明

1.向工程添加新项目

在http://.77中添加一个新的类文件以及其他新项目。操作很简单,具体步骤如下:在开启的快捷菜单中选择→,如图5-1所示。

(1)在视图中,在工程上单击右键,再

2023/12/11

14

C#程序设计实用教程

5.2.2类的声明

(2)在此时弹出的对话框中选择添加类文件,并为新文件命名,以.cs作为后缀,如图5-2所示。

(3)单击按钮后,就可以在视图中看到这个新的类文件了。

(4)双击该类文件,可以在其中声明新的类。

当然,也可以把多个功能类似的类放在一个类文件中。

2023/12/11

15

C#程序设计实用教程

5.2.2类的声明

2.声明类

C#中类的声明需要使用class关键字,并把类的主体放在花括号中,格式如下:

[类修饰符]class类名[:基类类名]{//属性//方法

}

其中,除了class关键字和类名外,剩余的都是可选项;类名必需是合法的C#标识符,它将作为新定义的类的类型标识符。16C#程序设计实用教程

2023/12/11

5.2.2类的声明

注意:class关键字前面是访问级别。在C#中,类的访问级别由类的修饰符进行限定,类的修饰符如表5-1所示。在上例中,假使类的修饰符为public,这表示该类可以被任何其他类访问。类的名称位于class关键字的后面。

2023/12/11

17

C#程序设计实用教程

5.2.2类的声明

以上的类修饰符可以两个或多个组合起来使用,但需要注意下面几点:(1)在一个类声明中,同一类修饰符不能屡屡出现,否则会出错。2023/12/1118C#程序设计实用教程

5.2.2类的声明

(2)在使用public、protected、internal和privat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论