第3章 面向对象的程序设计.ppt

上传人:qwe****56 文档编号:70106212 上传时间:2023-01-16 格式:PPT 页数:14 大小:126KB
返回 下载 相关 举报
第3章 面向对象的程序设计.ppt_第1页
第1页 / 共14页
第3章 面向对象的程序设计.ppt_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《第3章 面向对象的程序设计.ppt》由会员分享,可在线阅读,更多相关《第3章 面向对象的程序设计.ppt(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第3章章 VB.NET面向对象的程序设计面向对象的程序设计本章讲述的主要内容本章讲述的主要内容 3.1 3.1 类及其主要特性类及其主要特性 3.2 3.2 命名空间命名空间 3.3 3.3 在应用程序中创建和使用类在应用程序中创建和使用类 3.4 3.4 类的使用综合示例类的使用综合示例3.1 类及其主要特性类及其主要特性3 3 3 3.1.1.1.1.1.1.1.1 封装性封装性封装性封装性 封装指将对象的数据和操作包装在一起,从而使对封装指将对象的数据和操作包装在一起,从而使对封装指将对象的数据和操作包装在一起,从而使对封装指将对象的数据和操作包装在一起,从而使对象具有包含和隐藏信息(

2、如内部数据和代码)的能力。象具有包含和隐藏信息(如内部数据和代码)的能力。象具有包含和隐藏信息(如内部数据和代码)的能力。象具有包含和隐藏信息(如内部数据和代码)的能力。3 3 3 3.1.2.1.2.1.2.1.2 继承性继承性继承性继承性 继承性是指基于现有的类(继承性是指基于现有的类(继承性是指基于现有的类(继承性是指基于现有的类(“父类父类父类父类”或或或或“基类基类基类基类”)创)创)创)创建新的类(建新的类(建新的类(建新的类(“子类子类子类子类”或或或或“派生类派生类派生类派生类”)的机制。子类继承)的机制。子类继承)的机制。子类继承)的机制。子类继承父类所有的属性、事件和方法,

3、并可附加新的属性和方父类所有的属性、事件和方法,并可附加新的属性和方父类所有的属性、事件和方法,并可附加新的属性和方父类所有的属性、事件和方法,并可附加新的属性和方法。法。法。法。3.1 类及其主要特性类及其主要特性3 3 3 3.1.3 .1.3 .1.3 .1.3 多态性多态性多态性多态性 多态性是指同一方法应用在不同的场合可以表多态性是指同一方法应用在不同的场合可以表多态性是指同一方法应用在不同的场合可以表多态性是指同一方法应用在不同的场合可以表现出不同的行为。有以下两个方面的含义:现出不同的行为。有以下两个方面的含义:现出不同的行为。有以下两个方面的含义:现出不同的行为。有以下两个方面

4、的含义:1.1.1.1.重载:重载:重载:重载:将同一消息发送给同一对象,但由于消息的将同一消息发送给同一对象,但由于消息的将同一消息发送给同一对象,但由于消息的将同一消息发送给同一对象,但由于消息的参数不同,对象也表现为不同的行为。即在同一个类参数不同,对象也表现为不同的行为。即在同一个类参数不同,对象也表现为不同的行为。即在同一个类参数不同,对象也表现为不同的行为。即在同一个类中声明具有相同名称和不同参数的方法和属性。中声明具有相同名称和不同参数的方法和属性。中声明具有相同名称和不同参数的方法和属性。中声明具有相同名称和不同参数的方法和属性。2.2.2.2.重写:重写:重写:重写:同一个消

5、息发送给不同的对象,各对象表现同一个消息发送给不同的对象,各对象表现同一个消息发送给不同的对象,各对象表现同一个消息发送给不同的对象,各对象表现出不同的行为。即子类对从父类中继承而来的属性和出不同的行为。即子类对从父类中继承而来的属性和出不同的行为。即子类对从父类中继承而来的属性和出不同的行为。即子类对从父类中继承而来的属性和方法进行修改扩充,重新实现。方法进行修改扩充,重新实现。方法进行修改扩充,重新实现。方法进行修改扩充,重新实现。3.2 命名空间命名空间(NameSpace)将命名空间想象成将命名空间想象成将命名空间想象成将命名空间想象成“文件夹文件夹文件夹文件夹”,将类想象成,将类想象

6、成,将类想象成,将类想象成“文件文件文件文件”,在不同的命名空间中所有类都是,在不同的命名空间中所有类都是,在不同的命名空间中所有类都是,在不同的命名空间中所有类都是“独立独立独立独立”且且且且“惟一惟一惟一惟一”的。的。的。的。使用命名空间使用命名空间使用命名空间使用命名空间1.1.1.1.直接定位命名空间直接定位命名空间直接定位命名空间直接定位命名空间 任何一个命名空间都可以直接在代码中被调用。任何一个命名空间都可以直接在代码中被调用。任何一个命名空间都可以直接在代码中被调用。任何一个命名空间都可以直接在代码中被调用。如:在控制台中显示文字如:在控制台中显示文字如:在控制台中显示文字如:在

7、控制台中显示文字System.Console.WriteLineSystem.Console.WriteLineSystem.Console.WriteLineSystem.Console.WriteLine(欢迎使用欢迎使用欢迎使用欢迎使用VB.NET)VB.NET)VB.NET)VB.NET)2.2.2.2.使用使用使用使用ImportsImportsImportsImports关键字关键字关键字关键字 其语法格式为:其语法格式为:其语法格式为:其语法格式为:Imports Imports Imports Imports 命名空间名称命名空间名称命名空间名称命名空间名称3.3 在应用程序中

8、创建和使用类在应用程序中创建和使用类3.3.1 3.3.1 3.3.1 3.3.1 创建类的方法创建类的方法创建类的方法创建类的方法法一:继承现有类,对其进行修改和扩充。法一:继承现有类,对其进行修改和扩充。法一:继承现有类,对其进行修改和扩充。法一:继承现有类,对其进行修改和扩充。法二:重新创建一个全新的类。法二:重新创建一个全新的类。法二:重新创建一个全新的类。法二:重新创建一个全新的类。3.3.1 3.3.1 3.3.1 3.3.1 创建类的基本步骤创建类的基本步骤创建类的基本步骤创建类的基本步骤(1)(1)(1)(1)为项目添加一个类。为项目添加一个类。为项目添加一个类。为项目添加一个

9、类。(2)(2)(2)(2)声明变量。声明变量。声明变量。声明变量。(3)(3)(3)(3)定义类的属性。定义类的属性。定义类的属性。定义类的属性。(4)(4)(4)(4)创建类的方法。创建类的方法。创建类的方法。创建类的方法。(5)(5)(5)(5)声明类的事件声明类的事件声明类的事件声明类的事件(6)(6)(6)(6)使用构造函数和析构函数。使用构造函数和析构函数。使用构造函数和析构函数。使用构造函数和析构函数。3.3 在应用程序中创建和使用类在应用程序中创建和使用类3.3.3 3.3.3 3.3.3 3.3.3 创建类创建类创建类创建类执行执行执行执行“项目项目项目项目”“添加类添加类添

10、加类添加类”菜单命令,打开对话菜单命令,打开对话菜单命令,打开对话菜单命令,打开对话框。框。框。框。图图10-1 10-1 创建类创建类Public Class Class1 Public Class Class1 Public Class Class1 Public Class Class1 End ClassEnd ClassEnd ClassEnd Class3.3 在应用程序中创建和使用类在应用程序中创建和使用类3.3.4 3.3.4 3.3.4 3.3.4 声明变量声明变量声明变量声明变量 类中声明的变量通常是在类内部使用,常量被用于类中声明的变量通常是在类内部使用,常量被用于类中声

11、明的变量通常是在类内部使用,常量被用于类中声明的变量通常是在类内部使用,常量被用于存放对象的属性值。在类中声明变量的语法格式为:存放对象的属性值。在类中声明变量的语法格式为:存放对象的属性值。在类中声明变量的语法格式为:存放对象的属性值。在类中声明变量的语法格式为:Private|Dim Private|Dim Private|Dim Private|Dim 变量名变量名变量名变量名 As As As As 数据类型数据类型数据类型数据类型3.3 在应用程序中创建和使用类在应用程序中创建和使用类3.3.5 3.3.5 3.3.5 3.3.5 定义类的属性定义类的属性定义类的属性定义类的属性Di

12、m Dim Dim Dim 变量名变量名变量名变量名 As As As As 数据类型数据类型数据类型数据类型Public|Public|Public|Public|ReadOnlyReadOnlyReadOnlyReadOnly|WriteOnlyWriteOnlyWriteOnlyWriteOnly PropertyPropertyPropertyProperty属性名属性名属性名属性名AsAsAsAs数据类型数据类型数据类型数据类型 Get Get Get Get Return Return Return Return 变量名变量名变量名变量名 读取属性值读取属性值读取属性值读取属性值

13、End GetEnd GetEnd GetEnd Get Set(Set(Set(Set(ByValByValByValByVal Value As Value As Value As Value As 数据类型数据类型数据类型数据类型 变量名变量名变量名变量名=Value =Value =Value =Value 设置属性值设置属性值设置属性值设置属性值 End SetEnd SetEnd SetEnd SetEnd PropertyEnd PropertyEnd PropertyEnd Property1.1.1.1.语法格式:语法格式:语法格式:语法格式:注:注:(1)Value(1)V

14、alue是是隐式声明的一个变量。隐式声明的一个变量。(2)(2)注意注意public/public/ReadonlyReadonly/WriteonlyWriteonly关键字。关键字。3.3 在应用程序中创建和使用类在应用程序中创建和使用类3.3.5 3.3.5 3.3.5 3.3.5 定义类的属性定义类的属性定义类的属性定义类的属性Public Class RectanglePublic Class RectanglePublic Class RectanglePublic Class Rectangle Dim w,h As Integer Dim w,h As Integer Dim

15、w,h As Integer Dim w,h As Integer Public Property Width()As Integer Public Property Width()As Integer Public Property Width()As Integer Public Property Width()As Integer Get Get Get Get Return w Return w Return w Return w End Get End Get End Get End Get Set(Set(Set(Set(ByValByValByValByVal Value As

16、Integer Value As Integer Value As Integer Value As Integer w=Value w=Value w=Value w=Value End Set End Set End Set End Set End Property End Property End Property End Property Public Property Height()As Integer Public Property Height()As Integer Public Property Height()As Integer Public Property Heig

17、ht()As Integer (声明(声明(声明(声明HeightHeightHeightHeight属性,略)属性,略)属性,略)属性,略)End PropertyEnd PropertyEnd PropertyEnd PropertyEnd ClassEnd ClassEnd ClassEnd Class2.2.2.2.属性定义示例:属性定义示例:属性定义示例:属性定义示例:3.3 在应用程序中创建和使用类在应用程序中创建和使用类3 3 3 3.3.3.3.3.6 6 6 6 创建类的方法创建类的方法创建类的方法创建类的方法Public Class RectanglePublic Clas

18、s RectanglePublic Class RectanglePublic Class Rectangle Dim w,h As Integer Dim w,h As Integer Dim w,h As Integer Dim w,h As Integer Public Property Width()As Integer Public Property Width()As Integer Public Property Width()As Integer Public Property Width()As Integer (声明声明声明声明WidthWidthWidthWidth属性,

19、略)属性,略)属性,略)属性,略)End PropertyEnd PropertyEnd PropertyEnd Property Public Property Height()As Integer Public Property Height()As Integer Public Property Height()As Integer Public Property Height()As Integer (声明声明声明声明HeightHeightHeightHeight属性,略)属性,略)属性,略)属性,略)End PropertyEnd PropertyEnd PropertyEnd P

20、roperty Public Function Area()As Integer Public Function Area()As Integer Public Function Area()As Integer Public Function Area()As Integer 使用使用使用使用FunctionFunctionFunctionFunction创建方法创建方法创建方法创建方法 Return w*hReturn w*hReturn w*hReturn w*h 方法的行为是返回方法的行为是返回方法的行为是返回方法的行为是返回w*hw*hw*hw*h(面积)值面积)值面积)值面积)值

21、End FunctionEnd FunctionEnd FunctionEnd FunctionEnd ClassEnd ClassEnd ClassEnd Class3.3 在应用程序中创建和使用类在应用程序中创建和使用类3 3 3 3.3.3.3.3.7 7 7 7 声明类的事件声明类的事件声明类的事件声明类的事件在类中声明事件的设计步骤:在类中声明事件的设计步骤:在类中声明事件的设计步骤:在类中声明事件的设计步骤:(1)(1)(1)(1)使用使用使用使用EventEventEventEvent语句声明一个事件。其语法格式为:语句声明一个事件。其语法格式为:语句声明一个事件。其语法格式为:

22、语句声明一个事件。其语法格式为:Public Event Public Event Public Event Public Event 事件名事件名事件名事件名(形参列表形参列表形参列表形参列表)(2)(2)(2)(2)使用使用使用使用RaiseEventRaiseEventRaiseEventRaiseEvent语句激发事件。其语法格式为:语句激发事件。其语法格式为:语句激发事件。其语法格式为:语句激发事件。其语法格式为:RaiseEventRaiseEventRaiseEventRaiseEvent 事件名事件名事件名事件名(实参列表实参列表实参列表实参列表)(3)(3)(3)(3)使用使

23、用使用使用WithEventsWithEventsWithEventsWithEvents语句声明一个响应事件的对象:语句声明一个响应事件的对象:语句声明一个响应事件的对象:语句声明一个响应事件的对象:WithEventsWithEventsWithEventsWithEvents 对象名对象名对象名对象名 As New As New As New As New 类名类名类名类名(4)(4)(4)(4)为对象编写事件处理过程的代码:为对象编写事件处理过程的代码:为对象编写事件处理过程的代码:为对象编写事件处理过程的代码:Private Sub Private Sub Private Sub P

24、rivate Sub 对象名对象名对象名对象名_ _ _ _事件名事件名事件名事件名(形参列表形参列表形参列表形参列表)handles)handles)handles)handles 对象名对象名对象名对象名.事件名事件名事件名事件名3.3 在应用程序中创建和使用类在应用程序中创建和使用类3 3 3 3.3.3.3.3.8 8 8 8 构造函数与析构函数构造函数与析构函数构造函数与析构函数构造函数与析构函数1.1.1.1.构造函数构造函数构造函数构造函数(构造器构造器构造器构造器)在类的定义中使用名为在类的定义中使用名为在类的定义中使用名为在类的定义中使用名为“New”New”New”New”

25、的的的的SubSubSubSub过程初始化过程初始化过程初始化过程初始化对象实例对象实例对象实例对象实例(对类的变量进行初始化对类的变量进行初始化对类的变量进行初始化对类的变量进行初始化)。示例示例示例示例1 1 1 1:Public Class APublic Class APublic Class APublic Class A Dim x As Integer Dim x As Integer Dim x As Integer Dim x As Integer Dim y As stringDim y As stringDim y As stringDim y As string Pub

26、lic Sub New()Public Sub New()Public Sub New()Public Sub New()x=1 x=1 x=1 x=1 Y=“Y=“Y=“Y=“欢迎使用欢迎使用欢迎使用欢迎使用VB.NET”VB.NET”VB.NET”VB.NET”End Sub End Sub End Sub End Sub End ClassEnd ClassEnd ClassEnd Class示例示例示例示例2 2 2 2:Public Class APublic Class APublic Class APublic Class A Dim x As Integer Dim x As

27、Integer Dim x As Integer Dim x As Integer Dim y As stringDim y As stringDim y As stringDim y As string Public Sub Public Sub Public Sub Public Sub New(ByvalNew(ByvalNew(ByvalNew(Byval m as m as m as m as integer,integer,integer,integer,ByvalByvalByvalByval n as string)n as string)n as string)n as st

28、ring)x=m :y=n x=m :y=n x=m :y=n x=m :y=n End Sub End Sub End Sub End Sub End ClassEnd ClassEnd ClassEnd Class3.3 在应用程序中创建和使用类在应用程序中创建和使用类3 3 3 3.3.3.3.3.8 8 8 8 构造函数与析构函数构造函数与析构函数构造函数与析构函数构造函数与析构函数2.2.2.2.析构函数析构函数析构函数析构函数(析构器析构器析构器析构器)在类的定义中使用名为在类的定义中使用名为在类的定义中使用名为在类的定义中使用名为“Finalize”Finalize”Finali

29、ze”Finalize”的的的的SubSubSubSub过程过程过程过程释放系统资源释放系统资源释放系统资源释放系统资源。示例:示例:示例:示例:Protected overrides Sub Finalize()Protected overrides Sub Finalize()Protected overrides Sub Finalize()Protected overrides Sub Finalize()MyBase.FinalizeMyBase.FinalizeMyBase.FinalizeMyBase.Finalize()()()()End SubEnd SubEnd SubEn

30、d Sub 3.4 类类的使用综合示例的使用综合示例Ex3-1Ex3-1Ex3-1Ex3-1:定义一个时间类:定义一个时间类:定义一个时间类:定义一个时间类DateDateDateDate,包含年、月、日这,包含年、月、日这,包含年、月、日这,包含年、月、日这3 3 3 3个数据成员以及一个求第个数据成员以及一个求第个数据成员以及一个求第个数据成员以及一个求第2 2 2 2天日期的成员函数和输出天日期的成员函数和输出天日期的成员函数和输出天日期的成员函数和输出日期的成员函数。日期的成员函数。日期的成员函数。日期的成员函数。Ex3-2Ex3-2Ex3-2Ex3-2:设计一个职工工资卡管理程序:设计一个职工工资卡管理程序:设计一个职工工资卡管理程序:设计一个职工工资卡管理程序(P181)(P181)(P181)(P181)。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com