C#中this关键字的作用?能不能理解为引用类的对象,如一个引用集合中的某一部分,而不是整个集合。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中this关键字的作用?能不能理解为引用类的对象,如一个引用集合中的某一部分,而不是整个集合。相关的知识,希望对你有一定的参考价值。
请再通俗解释一下,什么情况下用抽象类,什么情况下用虚拟类,什么时候用override??
this操作数代表的是指向此对象的参考指针。也就是说,在建立对象的实体后,我们就可以使用this来存取到此对象实体。另外,this操作数也可以用来解决名称相同的问题。需要注意的是:静态方法中不能使用this。
Example 1:
this操作数用来解决名称相同的问题。
class AAA
...
public void BBBB(string a)
a= a;//这里不会成功,系统并不知道语句中的第一个a指的是类成员
private string a; //AAA的成员变量
修改为:this.a=a
Example 2:
使用this操作数返回目前对象的参考。
class AAA
...
public AAA SetName(string a)
this.a= a;
return this;
private string a;
这样,就可以使用下面的语句设置类了
AAA aaa1 = new AAA();
aaa1.SetName("001");
Example 3
this操作数用在构造器(Constructor)中的使用
//待补充 参考技术A this可以理解为引用类的对象,而它引用的就是本身类型,可以看成是本身类型的一个对象 参考技术B C#中this就是指当前运行所在的类,就是调用类自身变量、属性和方法时用
特别是在参数和类的变量或属性同名时加以区分 参考技术C this可用于方法、索引器、属性===里面,表示对当前对象的引用,即哪个对象调用那个用了this的方法、属性、索引器==,this就代表那个对象,所以this一般不能出现在静态方法里面。。。 参考技术D 就只这个类里面的对象 第5个回答 2011-01-27 就像铁门木门都是门(抽象类),你想要个门我给不了(不能实例化),但我可以给你个具体的铁门或木门(多态);而且只能是门,你不能说它是窗(单继承);一个门可以有锁(接口)也可以有门铃(多实现)。
门(抽象类)定义了你是什么,接口(锁)规定了你能做什么(一个接口最好只能做一件事,你不能要求锁也能发出声音吧(接口污染)
override是需要重写父类的方法时用的
以上是关于C#中this关键字的作用?能不能理解为引用类的对象,如一个引用集合中的某一部分,而不是整个集合。的主要内容,如果未能解决你的问题,请参考以下文章