首页 / 软件开发 / .NET编程技术 / [你必须知道的.NET] 第六回:深入浅出关键字---base和this
[你必须知道的.NET] 第六回:深入浅出关键字---base和this2011-03-14 博客园 Anytao本文将介绍以下内容:面向对象基本概念base关键字深入浅出this关键字深入浅出1.引言new关键字引起了大家的不少关注,尤其感谢Anders Liu的补充,让我感觉博客园赋予的交流平台真的无所不在。所以,我们就有必要继续这个话题,把我认为最值得关注的关键字开展下去,本文的重点是访问关键字(Access Keywords):base和this。虽然访问关键字不是很难理解的话题,我们还是有可以深入讨论的地方来理清思路。还是老办法,我的问题先列出来,您是否做好了准备。是否可以在静态方法中使用base和this,为什么?base常用于哪些方面?this常用于哪些方面?可以base访问基类的一切成员吗?如果有三层或者更多继承,那么最下级派生类的base指向那一层呢?例如.NET体系中,如果以base访问,则应该是直接父类实例呢,还是最高层类实例呢?以base和this应用于构造函数时,继承类对象实例化的执行顺序如何?2.基本概念base和this在C#中被归于访问关键字,顾名思义,就是用于实现继承机制的访问操作,来满足对对象成员的访问,从而为多态机制提供更加灵活的处理方式。2.1 base关键字其用于在派生类中实现对基类公有或者受保护成员的访问,但是只局限在构造函数、实例方法和实例属性访问器中,MSDN中小结的具体功能包括:调用基类上已被其他方法重写的方法。指定创建派生类实例时应调用的基类构造函数。2.2 this关键字其用于引用类的当前实例,也包括继承而来的方法,通常可以隐藏this,MSDN中的小结功能主要包括:限定被相似的名称隐藏的成员将对象作为参数传递到其他方法声明索引器3.深入浅出