关键字this的用法.doc_第1页
关键字this的用法.doc_第2页
关键字this的用法.doc_第3页
关键字this的用法.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C# 中的this C#中的保留字this仅限于在构造函数,类的方法和类的实例中使用。 * 在类的构造函数中出现的this作为一个值类型,它表示对正在构造的对象本身的引用 * 在类的方法中出现的this作为一个值类型,表示对调用该方法的对象的引用 * 在结构的构造函数中出现的this作为一个变量类型,表示对正在构造的结构的引用 * 在结构的方法中出现this作为一个变量类型,表示对调用该方法的结构的引用 除此之外,其他地方使用this保留字都是不合法的。 using System; class A public int x; public void Main() x=5; Console.WriteLine(this is the value of the x:0,x); Console.WriteLine(this is the value of the this.x:0,this.x); 这个程序不知道为什么执行的时候出现问题。 成员常量 public const double X=1.0 关键字const用于声明常量,后面要声明的常量的类型。 类的常量的修饰符号: 单词this是C#中的保留字,它允许一个对象指向它自己。在方法内部,this引用可以用于指向任何当前执行的对象。 举例例如:在一个叫做ChessPiece的类中,可以有个方法叫Move,它可能包含下列行: if(this.position=piece.position) result=false; 在这种情况下,this引用用来澄清是哪个position被引用了。this引用指向触发方法的对象。所以如果下面这行用 于触发方法,this引用指向firstshop: firstshop.Move(); 但是,如果另外一个对象用于触发方法,this引用就指向它。所以,如果使用了下面的调用,Move方法中的this引 用就指向secondshop: secondshop.Move(); 经常地,this引用用于区分构造函数的参数和它们相对应的同名的实例变量。例如:一个叫做Account类的构造函数 如下所示: public Account(string owner, long account, double initial) name=owner; acctNumber=account; balance=initial; 在编写这个构造函数时,我们特意为参数去了不同的名字来区分它们与实例变量name,accNumber,和balance。这个区分是任意的。构造函数分来可以用this引用写成如下所示:(这用更容易让人理解和接受) public Account(string name, long acctNumber, double balance) =name; this.acctNumber=acctNumber; this.balance=balance; 在这个版本的构造函数(非静态的构造函数是在创建类的对象的时候被自动调用的)中,this引用特别指向对象的实例变量。赋值语句右边的变量指向形参。这个方法消除了为了变量取不同的但是等价的名字

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论