黑马程序员技术交流社区

标题: C#面向对象中base和this的用法 [打印本页]

作者: xinchenglong    时间: 2013-8-26 14:19
标题: C#面向对象中base和this的用法
请问各位大侠,this关键字和base关键字有什么区别呢?this指代本类中的,base关键字用来调用基本构造函数,他们之间有什么样的联系吗?拜托说的详细一点,使用的时候注意事项是什么?求指导……求解释

作者: 许庭洲    时间: 2013-8-26 21:19
1.在类的构造函数中出现的this作为一个值类型,它表示对正在构造的对象本身的引用;
2.在类的方法中出现的this作为一个值类型,它表示对调用该方法的对象引用;
3.在结构的构造函数中出现的this作为一个变量类型,它表示对正在构造的结构的引用;
4.在结构的方法中出现的this作为一个变量类型,它表示对调用该方法的结构的引用;
5.base关键字主要是为派生类调用基类成员提供一个简写的方法。



作者: xinchenglong    时间: 2013-8-26 22:16
谢谢哥了,我会好好领会的……
作者: 心动行动    时间: 2013-8-28 00:17
this就是当前类的对象,base就是父类的对象,你需用到哪个类就用哪一个关键字。
作者: 瞎猫馒头米田共    时间: 2013-8-29 22:07
1.在构造函数后可以调用:this或者:base来调用是要本类的构造函数或者父类的那个构造函数
2.在子类中使用this.成员或者base.成员,在这个成员没有在这个子类中重写时候调用到都是一样的,当这个方法在这个类重写了,this调用的是子类的成员,base调用的是父类的成员。
(求技术分)
作者: 帕格尼尼的眼泪    时间: 2013-8-30 10:10
this代表当前实例,我们可以用this.来调用当前实例的成员方法,变量,属性,字段等;
也可以用this来做为参数状当前实例做为参数传入方法.
base代表当前实例的基类,是派生类访问基类的关键字
是用来派生类实例时调用基类构造函数和调用基类已被重写的方法





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2