第5章 面向对象编程基础.ppt

上传人:hyn****60 文档编号:70797212 上传时间:2023-01-28 格式:PPT 页数:14 大小:124KB
返回 下载 相关 举报
第5章 面向对象编程基础.ppt_第1页
第1页 / 共14页
第5章 面向对象编程基础.ppt_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《第5章 面向对象编程基础.ppt》由会员分享,可在线阅读,更多相关《第5章 面向对象编程基础.ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、5.4 属性属性n5.4.1 属性的声明属性的声明n5.4.2 属性的访问属性的访问5.4.1 属性的声明属性的声明nC#不提倡将成员变量的访问权限指定为public,使用户可以直接读写成员变量的值,这样做不安全。为了实现数据的封装和隐藏,类中成员变量的访问权限一般都设为private或protected,数据成员封装在类的内部,在外界可以通过公有属性进行访问。n属性本身不能存储任何数据,只是提供了一种访问成员变量的接口,并可以根据需要在读写成员变量时进行某些检查、警告等额外操作。5.4 属性属性5.4.1 属性的声明属性的声明n在类中声明属性的格式:class 类名类名修饰符修饰符 数据类型

2、数据类型 属性名属性名 访问器声明访问器声明其中:l“修饰符”与方法修饰符相同,包括:访问权限修饰符(public、internal、protected、private)、静态(static)、虚方法(virtual)、抽象(abstract)、重载(override)和隐藏(new)修饰符。l“数据类型”表示属性值的类型,可以是任何数据类型。5.4 属性属性5.4.1 属性的声明属性的声明n属性访问器声明格式如下:get /读访问器 /代码块set /写访问器 /代码块 get 访问器是一个不带参数的方法,用于获取属性成员的值(通过return语句)。set 访问器是带有一个名为“value

3、”参数的方法,用于设置成员变量的值。属性如果同时包含 get 和 set 访问器,则为可读写属性;如果只包含 get 访问器,则为只读属性;如果只包含 set 访问器,则为只写属性。5.4 属性属性5.4.2 属性的访问属性的访问n属性的访问与成员变量的访问相同。当通过属性名读取属性成员时,系统会自动调用其 get 访问器。当通过属性名给属性成员设置值时,系统会自动调用其 set 访问器。n代码示例代码示例5.4 属性属性5.5 构造函数构造函数n5.5.1 构造函数的声明构造函数的声明n5.5.2 构造函数的调用构造函数的调用n5.5.3 基类构造函数的调用基类构造函数的调用n5.5.4 静

4、态构造函数静态构造函数n5.5.5 析构函数析构函数5.5.1 构造函数的声明构造函数的声明n与类的其它方法一样,构造函数也有两种:实例构造函数和静态构造函数。实例构造函数是在用new关键字创建类的对象时由系统自动调用,每创建一个类的实例都会调用一次实例构造函数,主要用于初始化实例成员变量;静态构造函数是在类的第一次引用前由系统自动调用,并且仅执行这一次,主要用于初始化静态成员变量。5.5 构造函数构造函数5.5.1 构造函数的声明构造函数的声明n在类中定义实例构造函数的一般格式:class 类名类名 public 类名类名(形参列表形参列表)/定义构造函数 /函数体 n实例构造函数的特点:l

5、实例构造函数的函数名与类名相同。l实例构造函数没有返回值类型。l实例构造函数一般为public。n如果在类中没有定义任何实例构造函数,则编译器会提供一个默认的无参实例构造函数,该构造函数的函数体为空,仅仅负责创建类的实例。n注意:如果类中定义了构造函数,则系统永远不会调用默认构造函数5.5 构造函数构造函数5.5.2 构造函数的调用构造函数的调用n与类的其它方法一样,构造函数也可以有参数,也可以重载。n代码示例代码示例5.5 构造函数构造函数5.5.3 基类构造函数的调用基类构造函数的调用n在派生类中调用直接基类实例构造函数的一般格式:class 类名类名:基类名基类名 public 类名类名

6、(形参列表形参列表):base(实参列表实参列表)/函数体 n代码示例代码示例5.5 构造函数构造函数5.5.4 静态构造函数静态构造函数n在类中定义静态构造函数的一般格式:class 类名类名 static 类名类名()/定义静态构造函数 /函数体 n静态构造函数的特点:l静态构造函数的不能带有任何参数。l静态构造函数不能有访问修饰符。n代码示例代码示例5.5 构造函数构造函数5.5.5 构造函数的执行序列构造函数的执行序列n在实例化一个类的对象时,会一直追溯到这个类的继承层次中最上层的类,即 System.Object 类,首先执行 Object 类的构造函数,然后从上至下依次执行继承层次

7、中各类的构造函数。n代码示例代码示例5.5 构造函数构造函数5.5.6 析构函数析构函数n析构函数也是一种特殊的方法,与构造函数相对应,专门用于销毁对象。当对象不再使用时,系统会自动调用析构函数,销毁对象并释放其所占用的内存空间。5.6 析构函数析构函数5.5.6 析构函数析构函数n在类中定义析构函数的一般格式:class 类名类名 类名类名()/函数体 n析构函数的特点:l析构函数没有访问修饰符。l析构函数没有返回值类型。l析构函数没有参数。n在销毁一个类的对象时,也会一直追溯到这个类的继承层次中最上层的类,即 System.Object 类,首先执行本类的析构函数,然后从下向上依次执行继承层次中各类的析构函数,直到调用 Object 类的析构函数为止,其执行顺讯正好与构造函数相反。n代码示例代码示例5.6 析构函数析构函数

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

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁