收藏 分销(赏)

类与对象.doc

上传人:仙人****88 文档编号:6887145 上传时间:2024-12-23 格式:DOC 页数:3 大小:24KB 下载积分:10 金币
下载 相关 举报
类与对象.doc_第1页
第1页 / 共3页
类与对象.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
第五章 类与对象(之二) 授课教师:张俊峰 复习回顾: 类是对象的符号表示形式,是创建对象的模板;类可以定义对象的属性和可执行的操作(方法、事件),并定义保存对象状态(字段)的值。 在面向对象的概念里,现实世界的个体(对象)将抽象转化为程序中的对象,而个体(对象)的数据抽象转化为对象的数据成员,个体(对象)的特性抽象转化为对象的属性,个体(对象)的行为及处理问题的方法成为对象的方法。 类的实例是对象。对象可以执行类定义的操作,处理属于类的数据,可以通过调用对象的方法访问其属性、事件和字段,来访问对象的功能。 实例1:上节课作业---根据历法知识,所谓闰年是指输入的年份能被4整除,但不能被100整除;或者,能被400整除。试编程实现判断一个年份是不是闰年。 要点:定义一个日期类Tdate,这个类中拥有表达年、月、日的三个数据成员(即属性)month、day、year,另外,类中有一个判断是不是闰年的一个方法IsLeapYear。在定义完这个类之后,就可以由此类生成一个对象,使用该对象来表现自己就可以了。 5.2 实例构造函数 定义:实例构造函数是与类同名的特殊方法成员,它是实现初始化类实例所必需操作的成员,在C#中不允许使用为初始化的变量,因此在执行构造函数之前,对象是不可用的。 如果使用未初始化的变量,执行程序时会出现编译错误提示:使用了未赋值的局部变量。要初始化类变量,必须使用new运算符调用构造函数。如Person person1=new Person(); 1、默认实例构造函数 在C#中,如果类不包含任何实例构造函数声明,则自动提供一个默认的无参数的实例构造函数,并使用默认值初始化对象字段:基本类型字段数据为0、bool字段为fale、引用类型为null。 注意:只有在类不包含任何构造函数声明的前提下,系统才自动提供一个默认的无参数构造函数。可以在类中定义一个无参数的构造函数,同时定义带参数的构造函数,这是实际上就成了构造函数的重载。 2、实例构造函数的重载 定义:实例构造函数是与类同名的特殊方法,当类定义中含有两个以上其参数个数或种类不同的实例构造函数时,称为实例函数的重载。当对不同数据类型进行操作时,重载非常有用,因为重载提供了对可用数据类型的选择,所以他使得实例构造函数的使用更加方便灵活。 3、析构函数 定义:除了初始化类实例的构造函数之外,C#还提供了另外一个特殊的函数成员,即析构函数,析构函数用于销毁类的实例,释放被这些类的实例所占用的资源。析构函数没有任何参数,也不返回任何值,其函数名与类名相同,且在其前面加上符号~。析构函数是自动调用的,程序员无法控制何时调用析构函数。当任何代码都不在可能使用一个实例时,该实例就符合被销毁的条件。可以在实例符合被销毁条件之后的任何时间执行析构函数。程序退出是也会自动调用析构函数。 注意:一个类只能有一个析构函数,无法重载。系统能够提供默认析构函数,我们一般在析构函数里做释放资源等善后工作。 4、名称空间namespace 因为有许多人参加编写C#程序,所以不同程序员定义的类可能重名,如果某程序同时使用两个类,就可能造成命名冲突,命名空间通过为唯一类名提供一种约定,来尽量避免这个问题。在指定的命名空间中,两个类不能同名。但是,在不同的命名空间中类的名称可以相同。 注意:类库中的类不包含Main方法,这表明类库中的类不能用于开始一个应用程序的执行,类库中的类设计成功其他程序使用;类库代表的是一个程序集,要在其他项目中使用类库中的类,必须在对应项目中添加代表类库的程序集的引用;我们只能重用类库中的公共类。非公共类只能由同一程序集中其他类使用。 5、类成员可以分为静态成员和对象成员 类是类型而不是对象,一般在类里定义的成员是每个由此类产生对象都拥有的,因此可以称之为对象成员,但有时需要让类的所有对象在类的范围内共享某个成员,而这个成员不属于任何由此类产生的对象,它是属于整个类的,这种成员称之为静态成员。 类的成员要么是静态成员,要么是实例成员。一般来说,将静态成员看作属于类、将实例成员看作属于对象。 注意:静态成员必须用static修饰符;访问方法---类名.成员名称(对象.成员名称); 6、对象参数与返回值为对象 类是引用对象,引用类型变量的值为该变量引用对象的地址,类类型的变量包含对数据的引用(该变量称之为对象变量)。对于类,两个变量可能引用同一个对象,因此对一个变量的操作可能影响另一个变量所引用的对象。 对象作参数:传值和传引用。 方法的返回值可以与该方法所在类相同,也可以为其他对象。 7、方法的重载: 每个方法都有签名,方法的签名由方法名称以及它的每个形参的类型和种类(值、引用、输出)组成。具体说来,方法签名不包含返回类型。 在类中,如果声明了多个同名方法,但它们的签名不同,则称为方法的重载。 当方法对不同数据类型进行操作时,重载非常有用。方法的重载提供了对可用数据类型的选择,所以它使得方法的使用更加容易。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服