ch11_类进阶一

ch11_类进阶一

ID:44200856

大小:678.00 KB

页数:20页

时间:2019-10-19

ch11_类进阶一_第1页
ch11_类进阶一_第2页
ch11_类进阶一_第3页
ch11_类进阶一_第4页
ch11_类进阶一_第5页
资源描述:

《ch11_类进阶一》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、类进阶一执行校长李伟C#程序设计内容回顾类的概述声明类类成员创建变量和类的实例为数据分配内存实例成员访问修饰符从类的内部访问成员从类的外部访问成员本讲内容构造函数实例构造函数静态构造函数对象初始化列表析构函数readonly修饰符this关键字属性重点、难点重点构造函数析构函数this关键字属性难点构造函数属性构造函数实例构造函数是个特殊的方法,它在每个新实例创建的时候被执行构造函数用于初始化类实例的状态如果希望能从类的外部创建类的实例,需要声明构造函数为public构造函数的语法格式构造函数的名称和类名相同构造函数不能

2、有返回值构造函数带参数的构造函数构造函数可以带参数构造函数可以被重载在使用创建对象表达式创建类的实例的时候,要提供new表达式,并跟着类的构造函数之一默认构造函数如果在类中没有显示的提供构造函数,那么编译器会提供一个隐式的构造函数,它的特征它不带参数它的方法体为空如果在类中定义了一个或多个构造函数,那么编译器讲不再提供默认构造函数构造函数静态构造函数通常实例构造函数初始化类层次的项目,静态构造函数初始化类的静态字段类层次的项目需要被初始化在任何静态成员被引用之前在类的任何实例被创建之前静态构造函数在下列方面就像实例构造函

3、数构造函数的名称必须和类名相同构造函数不能有返回值静态构造函数在下列方面和实例构造函数不同静态构造函数中使用static关键字一个类只能有一个静态构造函数,且不能带参数静态构造函数不能带访问修饰符对象初始化列表对象初始化列表对象初始化列表允许在创建新的对象实例时设置字段和属性的值对象初始化列表语法格式有两种对于对象初始化列表的重要内容如下:被初始化的成员在创建对象的代码中必须是可访问性的初始化在构造函数完成之后发生的析构函数析构函数执行在类的实例被销毁之前需要的清理或释放非托管资源的行为,关于析构函数的重要内容每个类只有

4、一个析构函数析构函数不能带参数析构函数不能带访问修饰符析构函数和类有相同的名称,但是以一个”~”作为前缀析构函数只对类的实例起作用,因此析构函数没有静态的不能在代码中显示的调用析构函数readonly修饰符readonly修饰符字段可以用readonly来修饰,为只读字段可以在下列位置设置readonly字段值字段声明语句,如同readonly类的任何构造函数,如果是static字段,初始化必须在static构造函数中完成const字段的值必须在编译器决定,而readonly字段的值可以在运行期决定和const字段不同,

5、const总是静态的,而readonly字段:可以是实例字段,也可以是静态字段它在内存中有存储位置this关键字this关键字this关键字在类中使用,是对当前实例的引用,它只能被用在下列类成员的代码块中实例构造函数实例方法属性和索引的实例访问器不能在任何静态函数成员中使用this关键字this被用于下列目的用与区分类的成员和本地变量作为调用方法的实参属性属性属性可以理解为私有字段的读写器属性有如下特征它是命名的类成员它有类型它可以被赋值和读取属性是一个函数成员它不为数据存储分配内存它执行代码属性属性是指定的一组两个匹配

6、的、称为访问器的方法set访问器用于为属性赋值get访问器用于从属性获取值属性声明和访问器可以把set访问器想象成一个方法,带有单一的参数设置“属性”的值,get访问器没有参数并从属性返回一个值set访问器总是一个独立的,隐式的值参,名称为value,与属性的类型一致一个返回类型void属性get访问器总是没有参数一个与属性类型相同的返回类型属性的语法格式为:属性访问器的其他重点有set访问器中隐式的包含了一个value参数,访问器中可以像普通变量那样使用value,包括对它赋值get访问器的所有执行路径必须包含一条re

7、turn语句,返回一个属性类型的值访问器set和get可以以任何顺序声明,并且,除了这两个访问器外在属性上不允许有其他方法属性使用属性写入和读取属性的方法与访问字段一样,访问器被隐式调用要写入一个属性,在赋值语句的左边使用属性的名称要读取一个属性,把属性的名称用在表达式中属性和关联字段一般是在类中将字段声明为private以封装一个字段,并声明一个public属性以便从类外部通过属性来私有字段属性和关联字段的命名属性执行其他计算get和set能执行任何计算或不执行任何计算,唯一必需的是get访问器要返回一个属性类型的值只

8、读和只写属性可以通过忽略访问器的声明,以使一个或其他的属性访问器不被定义只有get访问器的属性为只读属性只有set访问器的属性为只写属性两个访问器中至少有一个必须被定义,否则编译器会产生一条错误信息属性静态属性属性也可以声明为static,静态属性的访问器和和所有静态成员一样不能访问类的实例成员,虽然它们能被类的实例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。