第3章面向对象程序设计PPT讲稿.ppt
《第3章面向对象程序设计PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第3章面向对象程序设计PPT讲稿.ppt(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章面向对象程序章面向对象程序设计设计第1页,共58页,编辑于2022年,星期一3.1 类类v在面向对象程序设计中,类被作为一种数据结构,是包在面向对象程序设计中,类被作为一种数据结构,是包含数据成员、函数成员和嵌套类型的数据结构。含数据成员、函数成员和嵌套类型的数据结构。v类声明类声明 属性属性 类修饰符类修饰符 class 类名类名类体类体 类修饰符包括类修饰符包括new、public、protected、internal、private、abstract和和sealed。第2页,共58页,编辑于2022年,星期一【例【例3-1】定义一个】定义一个Person类类第3页,共58页,编辑
2、于2022年,星期一创建类实例创建类实例 v格式为:格式为:类名类名 实例名实例名=new 类名(参数)类名(参数);v两种形式两种形式Person myTest=new Person();或或Person myTest;myTest=new Person();第4页,共58页,编辑于2022年,星期一类成员类成员 v类成员分为两大类,类本身定义的成员和从类成员分为两大类,类本身定义的成员和从基类继承来的成员。基类继承来的成员。v类成员包括函数成员和数据成员。类成员包括函数成员和数据成员。1类成员访问修饰符v访问修饰符用于指定类成员的可访问性。v共有public、private、protect
3、ed和internal四个类成员访问修饰符。第5页,共58页,编辑于2022年,星期一2静态成员与实例成员v当用当用static修饰符声明成员时,得到静态成员,修饰符声明成员时,得到静态成员,静态成员属于类,为这个类的所有实例所共静态成员属于类,为这个类的所有实例所共享享v不用不用static修饰符声明的成员,称为实例成员,修饰符声明的成员,称为实例成员,实例成员被类的实例所拥有。实例成员被类的实例所拥有。第6页,共58页,编辑于2022年,星期一构造函数和析构函数构造函数和析构函数 v构造函数用于为对象分配空间,完成初始化工作。构造函构造函数用于为对象分配空间,完成初始化工作。构造函数特殊性
4、表现在:数特殊性表现在:构造函数的名字必须与类名相同;构造函数的名字必须与类名相同;构造函数可以带参数,但没有返回值;构造函数可以带参数,但没有返回值;构造函数在对象定义时被自动调用;构造函数在对象定义时被自动调用;如果没有给类定义构造函数,则编译系统会自动生成一个缺如果没有给类定义构造函数,则编译系统会自动生成一个缺省的构造函数,其形式如下:省的构造函数,其形式如下:public con():base()()构造函数可以被重载,但不可以被继承。构造函数可以被重载,但不可以被继承。第7页,共58页,编辑于2022年,星期一v实例构造函数用于创建和初始化实例,创建新对象时要调用实例构造函数,其格
5、式为:访问修饰符 类名(形参列表)函数体 v静态构造函数用于初始化静态数据,或用于执行仅需执行一次的特定操作。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。其格式为:static 类名()函数体 第8页,共58页,编辑于2022年,星期一v析构函数主要用于释放类实例。析构函数特殊性表现在:析构函数的名字与类名相同,但它前面加一个“”符号;析构函数不能够带参数,也没有返回值;当撤销对象时,自动调用析构函数;析构函数不能被继承,也不能被重载。第9页,共58页,编辑于2022年,星期一【例【例3-3】使用构造函数和析构函数】使用构造函数和析构函数第10页,共58页,编辑于2022年
6、,星期一方法方法 v方法是表现类或对象行为的成员函数。方法是表现类或对象行为的成员函数。1.方法声明v声明格式:声明格式:方法修饰符方法修饰符 返回类型返回类型 方法名(形参列表)方法名(形参列表)方法体方法体 v修饰符包括:修饰符包括:new、public、protected、internal、private、static、virtual、sealed、override、abstract和和extern。第11页,共58页,编辑于2022年,星期一2.方法参数(1)值参数未用任何修饰符声明的参数为值参数。未用任何修饰符声明的参数为值参数。(2)引用参数用用ref修饰符声明的参数为引用参数。在
7、方法中对引用参修饰符声明的参数为引用参数。在方法中对引用参数的任何更改都会反映给实参。数的任何更改都会反映给实参。(3)输出参数用用out修饰符声明的参数称为输出参数。如果希望函数返回修饰符声明的参数称为输出参数。如果希望函数返回多个值,可使用输出参数。多个值,可使用输出参数。第12页,共58页,编辑于2022年,星期一【例【例3-4】使用值参数】使用值参数第13页,共58页,编辑于2022年,星期一【例【例3-5】使用引用参数】使用引用参数 第14页,共58页,编辑于2022年,星期一(4)参数数组v用用params修饰符声明的变量称为参数数组,修饰符声明的变量称为参数数组,它允许向函数传递
8、个数变化的参数。它允许向函数传递个数变化的参数。第15页,共58页,编辑于2022年,星期一【例【例3-6】使用输出参数】使用输出参数 第16页,共58页,编辑于2022年,星期一【例【例3-7】使用参数数组】使用参数数组 第17页,共58页,编辑于2022年,星期一3.静态方法和实例方法v用用static修饰符声明的方法为静态方法,它不修饰符声明的方法为静态方法,它不与实例相关联,它属于类。只需要类名和方与实例相关联,它属于类。只需要类名和方法名就可调用静态方法法名就可调用静态方法v未用未用static修饰符声明的方法为实例方法。它修饰符声明的方法为实例方法。它与特定实例相关联。可以用与特定
9、实例相关联。可以用this来访问该实来访问该实例。实例方法可以访问类中的任何成员。例。实例方法可以访问类中的任何成员。第18页,共58页,编辑于2022年,星期一【例【例3-8】使用静态方法和实例方法】使用静态方法和实例方法 第19页,共58页,编辑于2022年,星期一4.方法重载v它允许一个类中有同名的方法存在它允许一个类中有同名的方法存在v为了区分这些同名方法,要求方法有不同的为了区分这些同名方法,要求方法有不同的参数,要么参数个数不同,要么参数类型不参数,要么参数个数不同,要么参数类型不同。同。第20页,共58页,编辑于2022年,星期一【例【例3-9】使用方法重载】使用方法重载 第21
10、页,共58页,编辑于2022年,星期一5.运算符重载v运算符重载可以对运算符重载可以对C#中已有的运算符赋予新中已有的运算符赋予新的功能。其格式为:的功能。其格式为:public static 返回值类型返回值类型 operator unary-operator(参数列表参数列表)方法体方法体第22页,共58页,编辑于2022年,星期一【例【例3-10】重载】重载Point类的和类的和第23页,共58页,编辑于2022年,星期一6.this关键字vthis 关键字引用类的当前实例,成员通过关键字引用类的当前实例,成员通过this关键字可以知道自己属于哪一个实例。关键字可以知道自己属于哪一个实例
11、。this关键字是一个隐含引用,它隐含于每个关键字是一个隐含引用,它隐含于每个类的成员函数中。类的成员函数中。vthis 的常用用途:的常用用途:限定被相似的名称隐藏的成员限定被相似的名称隐藏的成员 将对象作为参数传递到其他方法将对象作为参数传递到其他方法 声明索引器声明索引器 第24页,共58页,编辑于2022年,星期一字段与属性字段与属性 1.字段v字段表示与对象或类相关联的变量。字段表示与对象或类相关联的变量。v静态字段:用静态字段:用static修饰符声明的字段,无论存在多少个修饰符声明的字段,无论存在多少个类实例,它们都共享一个静态字段拷贝。类实例,它们都共享一个静态字段拷贝。v实例
12、字段:没用实例字段:没用static修饰符声明的字段,类的每个实例修饰符声明的字段,类的每个实例都包含实例字段的一个拷贝。都包含实例字段的一个拷贝。v只读字段:用只读字段:用readonly修饰符声明的字段,它只能修饰符声明的字段,它只能在字段声明或构造函数中赋值,在其它任何地方都在字段声明或构造函数中赋值,在其它任何地方都不能改变只读字段的值。不能改变只读字段的值。第25页,共58页,编辑于2022年,星期一【例【例3-11】使用字段】使用字段第26页,共58页,编辑于2022年,星期一2.属性v属性用于刻画对象的特征或表示对象的状态,它提供对属性用于刻画对象的特征或表示对象的状态,它提供对
13、类或对象性质的访问。类或对象性质的访问。v其格式为:其格式为:访问修饰符访问修饰符 数据类型数据类型 属性名属性名getget访问器代码块访问器代码块setset访问器代码块访问器代码块 v set访问器:给属性赋值,它使用访问器:给属性赋值,它使用value设置属性的值设置属性的值vget访问器:获取属性值,它通过访问器:获取属性值,它通过return返回属性的值。返回属性的值。v如果只有如果只有get访问器,表示是只读属性;如果只有访问器,表示是只读属性;如果只有set访问访问器,表示只写属性;如果既有器,表示只写属性;如果既有get访问器,也有访问器,也有set访问器,访问器,表示读写属
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 PPT 讲稿
限制150内