原创 C# this关键字详解

2011-8-24 12:17 1459 5 5 分类: 工程师职场
在向大家详细介绍C# this关键字之前,首先让大家了解下类与对象的区分,然后全面介绍C# this关键字。

类与对象的区分对我们把握OO编程至关重要。我们说类是对其成员的一种封装,但类的封装设计仅仅是我们编程的第一步,对类进行对象实例化,并在其数据成员上实施操作才是我们完成现实任务的根本。实例化对象采用MyClass myObject=new MyClass()语法,这里的new语义将调用相应的构建器。C#所有的对象都将创建在托管堆上。实例化后的类型我们称之为对象,其核心特征便是拥有了一份自己特有的数据成员拷贝。这些为特有的对象所持有的数据成员我们称之为实例成员。相反那些不为特有的对象所持有的数据成员我们称之为静态成员,在类中用static修饰符声明。仅对静态数据成员实施操作的称为静态函数成员。C#中静态数据成员和函数成员只能通过类名引用获取,看下面的代码:
using System; 
class A 

public int count; 
public void F() 

Console.WriteLine(this.count); 


public static string name; 
public static void G() 

Console.WriteLine(name); 


class Test 

public static void Main() 

A a1=new A(); 
A a2=new A(); 
a1.F(); 
a1.count=1; 
a2.F(); 
a2.count=2; 

A.name="CCW"; 
A.G(); 

}

class Employee 

public Employee(string name, string alias)  

this.name = name; 
this.alias = alias; 

}
将对象作为参数传递到其他方法时也要用this表达,例如:

CalcTax(this); 
声明索引器时this更是不可或缺,例如:

public int this [int param] 

get 

return array[param]; 

set 

array[param] = value; 

}
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
5
关闭 站长推荐上一条 /1 下一条