- 1、本文档共62页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章--C#语言与面向对象的编程基础
* decimal类型精度高,一般用于金融、财会等领域的商业运算 * 9. object类和string类 object类和string类是在C#编程中经常用到的两个类: (1)object类 object类是所有其他类型的基类,在C#中,所有类型都是直接或间接地从object类型中派生而来的。因此,一个object类的变量可以赋予任何类型的值。 (2)string类 string类型专门用于对字符串的操作,它对应的系统类型为System.String。 * 2.2.3 接口 接口是一组抽象的方法,用来定义类型与使用该类型的用户之间的协定。一个接口可以从多个基接口继承,而一个类或结构可以实现多个接口。 接口和类一样,可以有方法、属性和事件等成员。但与类不同的是,接口仅仅提供成员的声明,并不提供成员的实现。接口成员可以在具体的类或结构代码中实现。因此,一个接口定义一个协定,实现接口的类或结构必须遵守其协定。 * 1. 接口的定义 接口的定义格式为: [属性] [接口修饰符] interface 接口名[:基接口] {接口体} 其中,关键字interface、接口名和接口体是必需项,其他项是可选项。接口修饰符包括:new、public、protected、internal、private。接口体用于定义接口的成员。 接口支持多继承。在接口名后可以列举一个或多个继承接口,相互之间以逗号分隔。 * 2. 接口的实现 当希望类成员展示某些特性时,可以将这些成员分组在接口中,然后在类或结构中实现。 * interface Secret //定义接口类型Secret { void Encrypt(); void Unencrypt(); } class Message: Secret //在类Message中实现了接口Secret { public void Encrypt() {…} public void Unencrypt() {…} } 本例中,类Message实现了接口Secret中声明的所有方法。 * 2.2.4 委托 委托(delegate)用来封装带有特定签名和返回类型的方法,可以在委托中封装任何匹配的方法(在C++或者其他语言中,实现这一点需要使用函数指针或成员函数指针。与函数指针不同,委托是面向对象的,而且是类型安全和可靠的)。 * 1. 委托的定义 委托的定义格式为: [属性] [委托修饰符] delegate 返回值类型 标识符([参数列表]) 其中,委托修饰符包括:new、public、protected、internal、private;标识符为新声明的委托类型;返回值类型和参数列表为所封装的方法的返回值类型和参数列表,而且参数列表的类型和顺序都要与所封装方法的参数相同。 * 2. 创建委托的实例 在定义了委托之后,就可以和类的实例化一样,通过new运算符来创建委托的实例(即对象),传入与返回类型和签名都匹配的方法。格式如下: 委托名 实例名 = new 委托名 (参数); 其中,参数有三种情况: (1)类的静态方法名 (2)类实例(即对象)的实例方法名 (3)另一个委托 * 2.2.5 事件 事件就是当对象上发生某种事情时,对象向其客户端通知操作发生的方法。触发事件的对象叫事件发送方,捕获事件并对其作出响应的对象叫做事件接收方。 由于事件发送方事先不知道哪些对象或方法将处理它引发的事件,所以,需要在发送方和处理方之间使用一个媒介来联系。在C#中,使用委托作为这个纽带。在发布事件的类中定义用委托声明的事件,在事件接收方定义响应事件的事件处理方法,事件和方法通过委托进行关联。 * 事件本质上是类中的一个委托类型数据成员,在类中声明事件有两步。 (1)必须声明该事件的委托类型。如: public delegate void EventHandler(object sender, EventArgs e); 该委托定义了事件发生后,将调用的事件处理方法的参数列表。 (2)使用Event关键字声明事件本身,格式为: [属性] 修饰符 event委托类型 事件名 * 2.2.6 数组类型 数组类型是具有相同类型的一组数据,存放在相邻的内存块中。在C#中,数组中的元素可以是任何数据类型。 声明数组 数组的初始化 数组元素的访问 * 2.3 运算符 运算符用于操纵信息。C#提供了大量的运算符,用于进行各种类型数据的运算。根据操作数
文档评论(0)