面向对象的程序设计.ppt

上传人:本田雅阁 文档编号:3223875 上传时间:2019-08-02 格式:PPT 页数:22 大小:727.04KB
返回 下载 相关 举报
面向对象的程序设计.ppt_第1页
第1页 / 共22页
面向对象的程序设计.ppt_第2页
第2页 / 共22页
面向对象的程序设计.ppt_第3页
第3页 / 共22页
面向对象的程序设计.ppt_第4页
第4页 / 共22页
面向对象的程序设计.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《面向对象的程序设计.ppt》由会员分享,可在线阅读,更多相关《面向对象的程序设计.ppt(22页珍藏版)》请在三一文库上搜索。

1、第3章 面向对象的程序设计,面向对象程序设计是程序开发的一个里程碑,通过使用计算机编程语言可以模拟现实世界中的各种实体对象。面向对象通过类、对象、继承、属性、方法等技术及扩展方法,使得复杂的工作条理清晰、编写容易。本章将结合具体实例来介绍面向对象的开发技术。,3.1 面向对象程序设计概述,面向对象的程序设计:Object-Oriented Programming,又称OOP程序设计。面向对象程序是程序开发的一场重要革命。面向对象程序的诞生,让更多初学者逐步成为程序员,同时推动了整个计算机软件事业的发展。本节将介绍面向对象程序设计的一些相关概念。,3.1.1 面向对象的概念,对象是程序中的组成部

2、件。对象可以理解为程序中的“一样东西”。现实生活中到处都是对象。 从一个对象就可以访问成员,并将该成员作为一个对象,再访问该对象成员的属性、方法,这种技术就是面向对象。计算机应用这种面向对象技术进行开发就是面向对象程序开发。,3.1.2 面向对象开发的特点,面向对象程序开发通过对象就可以访问其成员,访问成员的属性、方法,使程序开发更接近人性化,变得更简易性。面向对象程序之所以是程序开发的一个里程碑,除了上面这些特点外,更重要的就是其具有唯一性、分类性、模板性、继承性、多态性。,3.2 创建类与成员,类是一种对包括构造数据成员、函数成员和嵌套类型进行封装的数据结构。在面向对象的程序开发中,类就是

3、对象的模板,对象的模板性就是通过类来实现的。在本章的3.1节中所讲的玩具车模板就是一个类,由该模板创建生成的玩具车就是对象。,3.2.1 在Visual Studio中创建类文件,在面向对象开发中,首先就需要创建类。在ASP.NET Web开发中,创建类时最好是将类单独存储到一个文件中。在Visual Studio中开发网站,如果创建一个新类,将会把类文件存储到App_Code目录下。使用该目录存储类文件,可以方便ASP.NET编译网站。,3.2.2 对象的创建,类是对象的模板,对象是通过类来创建的。创建对象就是程序按照类的构造,为内存分配一定存储空间。对象的创建是通过new关键字来创建的,其

4、语法如下。 ClassName objectName=new ClassName(参数),3.2.3 构造函数的设计,构造函数是一种很特殊的方法,是类创建对象实体时将要执行的方法。构造函数总是与new关键字一起使用。类中可以创建许多构造函数。如果类是玩具车模板,那么构造函数就是注塑行为。通过向玩具车模板(类)中注入塑料(构造函数),就可以生产出一部玩具车,该过程如图所示。,3.2.4 类的属性,类的属性用于控制类的特征,类就是由这些属性组成的。属性分为私有属性和公开属性。公开属性是指类提供给外界可访问的特征。私有属性是指外界不可以访问的特殊属性。,3.2.5 类的方法,方法是类的行为,用于执行

5、类的特定任务。上面所创建的学生类,只包括了3个属性,没有方法。该类只能用于存储数据。方法分为两种类型,一种有返回值,一种没有返回值。,3.2.6 继承性,儿子由父亲所生,多少是要像父亲的,这就是继承性。面向对象程序开发,同样提供了“儿子由父亲所生,多少要像父亲”的继承机制。类A可以根据类B生成,类A可以看成类B的“儿子”,类B可以看成类A的“父亲”,类A(儿子)要“像”类B(父亲),这个“像”就是类的继承。类A既然是由类B生成的,那么类B的所有属性及方法,类A也同样具有。通常称A类为B类的子类,B类是A类的基类(或父类)。类的继承性使程序员可以基于已创建好的类,创建属于自己的类,提高了程序的重

6、复性使用。,3.2.7 多态性,儿子由父亲所生,说他像其父亲,但还是有些不像,这些不像就是由于儿子有自身的特点,这就是多态性。类的多态性是指子类继承基类之后,可以设置自身的一些属性和方法,使子类“像”(继承)基类,又有点“不像”(多态性)。子类的属性和方法的创建与上述所讲的语法一样。,3.3 面向对象的抽象编程,从诞生开始,面向对象程序开发就是基于类的创建和使用而不断发展的。但随着面向对象程序开发的进一步发展,为了使其程序设计更为灵活,更趋向智能化,例如,程序员不喜欢原来程序结构要求它们必须使用某种数据类型,来构建应用程序,而更喜欢程序结构只定义数据的框架结构。至于使用什么数据类型,则由程序员

7、在开发中自行定义。这就推动了抽象程序的发展。抽象编程主要包括接口、集合、泛型等。,3.3.1 枚举,枚举是自定义数据类型,该值可以是众多值中的一个。枚举在.NET的程序开发里十分常见,常用于控件属性的设置。例如,在Visual Studio中创建一个新页面,页面将自动添加一个div标签。在div标签属性面板中,单击“Align属性”右边的下三角按钮,则显示该属性可以设置为center、left、right。,3.3.2 集合,集合与数组十分相似,是由许多数据项目组成的整体。同时,集合为这些数据项目标上序号,方便今后对这些数据项目进行查找索引。但是数组在其创建时就必须指定其数组项,让内存为其分配

8、存储空间。而集合可以通过Add方法,添加新的数据项目。此时内存为集合重新分配空间。,3.3.3 接口,接口是指由一系列虚拟方法组成的抽象类型,其中每一种方法都有其名称、参数和返回值。接口的实现,就是让实现接口的子类具体实现这些方法。日常生活中的学习可以看成一种接口,学习(接口)包括读书、做作业、背诵。由于学习没有规定要学习什么,应该如何读书,如何做作业,如何背诵等具体方法,所以这些学习方法,可以看作接口方法。一名学生既然到学校读书(实现接口),学生就要学习,至于如何学习、如何读书、做作业、背诵则要学生在具体学习中去实现。,3.4 .NET中开发语言的特性,ASP.NET 4.0的程序开发逐步向

9、智能化程序开发推进,泛型已广泛应用到其编程领域中。.NET 4.0为了提高并简化泛型编号,对其自身的编程语言进行改进,主要有以下特点。 自动属性; 隐含类型变量; 匿名类型; 类和集合的初始化器; 扩展方法; Lambda表达式; Lambda表达式树。,3.4.1 使用匿名类型,为了提高程序开发的效率及程序代码智能化,.NET 4.0推出一种可以在程序中自动创建类型,又无须设置其相关属性的方法,该方法就是匿名类型。,3.4.2 类和集合的初始化器,类初始化器由一系列成员对象组成,其对象必须初始化,用逗号间隔,使用花括号封闭。学习了类之后可以知道,类创建后要通过其构造函数创建一个实例。如果构造

10、函数是无参数的,还要对其属性进行一一设置相关数据。类的初始化器则可以在创建类的实例时,无须经过构造函数直接为?涫粜愿持?。,3.4.3 应用扩展方法,扩展方法就是在无须修改现有类或创建新类的情况下,为现有类“添加”新方法。扩展方法是一种特殊的静态方法,但该方法可以像原来类的方法一样进行调用。 扩展方法本身必须实现一个静态类,其方法也必须实现一个静态方法,其参数必须使用this关键字定义一个数据类型,该数据类型就是要“添加”扩展方法的数据类型。,3.4.4 Lambda表达式,Lambda表达式是一个匿名函数,可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。所有Lambda表达式都使用Lambda运算符 =,该运算符读为“goes to”。该Lambda运算符的左边输入参数(如果有),右边包含表达式或语句块。,3.5 小结,本章全面介绍了面向对象开发中类的创建与运用,继承与接口的实现等基础知识。还讲解了抽象编程枚举、集合、泛型等基础知识。这里只是简单讲解了泛型的运用,并没讲解泛型的实现,该部分知识读者可以参考由电子工业出版社出版的Visual C# 2008开发技术详解和ASP.NET 3.5网络数据库开发实例自学手册进一步研究。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1