- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三次作业---面向对象程序设计20张震20101501.doc
第三次作业---面向对象程序设计
张震 冶金1005班面向对象程序设计的由来:
面向对象的程序设计是一种基于结构分析的、以数据为中心的程序设计方法。面向对象的程序设计方法总体思路是:将数据及处理这些数据的操作都封装(Encapsulation)到一个称为类(Class)的数据结构中,在程序中使用的是类的实例——对象。对象是代码与数据的集合,是封装好了的一个整体,对象具有一定的功能。也就是说对象是具有一定功能的程序实体。程序是由一个个对象构成的,对象之间通过一定的“相互操作”传递消息,在消息的作用下,完成特定的功能。
1)类和对象
通常把具有同样性质和功能的东西所构成的集合叫作类。
(2)属性、方法与事件
属性是对象的状态和特点。
方法是对象能够执行的一些操作,它体现了对象的功能。
事件是对象能够识别和响应的某些操作 。
(3)封装
所谓的封装,就是将用来描述客观事物的一组数据和操作组装在一起,形成一个类。
(4)继承
类之间除了有相互交流或访问的关系以外,还可能存在着一种特殊的关系,这就是继承。在Visual C#中只支持单继承,即一个派生类只能有一个基类。
(5)重载
重载指的是方法名称一样,但如果参数不同,就会有不同的具体实现。重载主要有两类:方法重载及运算符重载。
(6)多态性
所谓多态性就是在程序运行时,面向对象的语言会自动判断对象的派生类型,并调用相应的方法。
主要技术:构造函数 和 析构函数
1.构造函数
构造函数主要用来为对象分配存储空间,完成初始化操作(如给类的成员变量赋值等)。在C#中,类的构造函数遵循以下规定。
(1)构造函数的函数名和类的名称一样。
(2)当某个类没有构造函数时,系统将自动为其创建构造函数,这种构造函数称为默认构造函数。如例7-2中默认的构造函数为:
Example1()
{
};
(3)构造函数的访问修饰符总是public。如果是private,则表示这个类不能被实例化,这通常用于只含有静态成员的类中。
(4)构造函数由于不需要显式调用,因而不用声明返回类型。
(5)构造函数可以带参数也可以不带参数。
2.析构函数
析构函数在对象销毁时被调用,常用来释放对象占用的存储空间。析构函数具有以下特点。
(1)析构函数不能带有参数。
(2)析构函数不能拥有访问修饰符。
(3)不能显式地调用析构函数。
(4)析构函数的命名规则是在类名前加上一个“~”号。如上例的Example1类的析构函数为:
~Example1()
{
};
(5)析构函数在对象销毁时自动调用。
例子: 类的构造函数和析构函数的演示。(程序代码详见例7-3)[执行结果]
1.方法的定义
[格式]:[方法修饰符] 返回值类型 方法名([参数列表])
{ 方法实现部分;
}
2.静态方法和非静态方法
对于静态方法和非静态方法,只需抓住以下几点:(1)静态方法属于类所有,非静态方法属于类定义的对象所有;(2)非静态方法可以访问类中包括静态成员在内的所有成员,而静态方法只能访问类中的静态成员。
静态方法和动态方法的演示。请观察并分析下列程序的执行结果。 [执行结果]
运算符重载
在C#中,运算符重载在类中进行声明,声明的格式如下。
[格式]:返回值类型 operator 运算符(运算对象列表)
{
重载的实现部分;
};
在C#中,可以重载的运算符主要有:
+ - ! ~ ++ -- true false
* / % | ^ == != = =
不能重载的运算符有: .
= || ?: new typeof sizeof is
域
域又称字段,它是类的一个成员,这个成员代表与对象或类相关的变量。域的定义格式如下。
[格式]:[域修饰符] 域类型 域名;
属性是对现实世界中实体特征的抽象,它提供了一种对类或对象特性进行访问的机制。属性的声明格式如下。
this关键字用来引用类的当前实例,成员通过this关键字可以知道自己属于哪一个实例。this关键字只能用在类的构造函数、类的实例方法中,在其它地方(如静态方法中)使用this关键字均是错误的。
文档评论(0)