C_关键字详解(经典).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C_关键字详解(经典)

关键字是对编译器有特殊意义的预定义的保留标识符。 它们不能在程序中用作普通标识符,除非在它们前面加上@前缀。 第一部分 一.访问关键字:base,this ~~~~base:访问基类的成员。 用于从派生类中访问基类的成员, 1.调用基类上已经被重写的方法。 2.指定创建派生类实例时应调用的基类构造函数。 **对基类的访问只能在 派生类的构造函数 实例的方法 实例的属性访问器 中。 属性访问器:get,set函数。 注意:!!!!!!!!! 不能在静态方法中使用base关键字。 例: 在子类的方法中写 base.GetInfo();调用基类的方法。 基类中的构造函数重载了,Mybase()和Mybase(int i); 在子类的构造函数中public MyDerived():base(int i) public MyDerived(int i):base() ~~~~this:引用当前对象。 用于引用为其调用方法的当前实例。 静态成员函数没有this指针。 可以用于从 构造函数,实例方法,实例访问器 中访问成员。 this的一般用途: 1.限定被相似的名子隐藏的成员 public void A(int a, int b ) { this.a=a; this.b=b; } 2.将对象作为参数传递到函数中 public void ShowInstance() { print(this); console.writeline(lalalalllalalala); } 3.声明索引器 public int this[int param] { get{ return array[param]; } set{ array[param]=value; } } 注意!!!!!!静态方法,静态属性访问器或字段声明中不能用this。 二.转换关键字:explicit, implicit, operator 1~~~~explicit: 用于声明用户定义的 显式类型转换运算符。 例: class MyType { public static explicit operator MyType(int i) { //从int显式转换成MyType类型的代码!!! } } 显式类型转换符必须通过类型转换调用。需要在转换失败时抛出异常。 if(转换失败的条件) throw new ArgumentException(); int i; MyType x = (MyType)i; 注意!!!!!!!如果转换可能导致信息丢失,则使用explicit关键字。 2~~~~implicit: 用于声明用户定义的 隐式类型转换运算符。 例: class MyType { public static implicit operator int(MyType i) { //从MyType隐式转换成Mint类型的代码!!! } } MyType i; int x = i; 注意!!!!!!!!!!!由于隐式转换在程序员未指定的情况下发生,所以必须防止出现不良的后果。只有在一定不会出现异常和信息丢失时才可以使用implicit,否则使用expicit。 3~~~~operator: 用于声明用户在类或结构中自定义的运算符。有四种形式: public static 结果类型 operator unary-operator (参数类型 参数名) public static implict operator 目标类型 (输入类型 参数名) public static explict operator 目标类型 (输入类型 参数名) //implict中,目标类型一般是封闭类型,例如:int, double, byte等。 //explict中,目标类型一般是自定义类型,例如:MyType等。 三.文字关键字:null,false,true 1~~~~null: 表示不引用任何对象的空引用的值。null是引用类型的默认值。 2~~~~true: true运算符:用户自定义的类型可以重载true运算符,用来表示是否满足条件,若满足则返回bool值的true,否则返回false。 注意!!!!!!!若在自定义类型中定义了true运算符,则必须定义false运算符。 true文字值:表示bool的真。 3~~~~false: false运算符:用户自定义的类型可以重

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档