zoukankan      html  css  js  c++  java
  • base和this关键字

    问题:

    1、是否可以在静态方法中使用base和this;
    
    2、base常用于哪些方面,this常用于哪些方面;
    
    3、base可以访问基类的一切成员吗;
    
    4、如果有三层或更多继承,那么最下级派生类的base指向哪一层呢,例如.NET体系中,如果以base访问,则应该是直接父类实例呢还是最高层实例呢;
    
    5、以base和this应用于构造函数时,继承类对象实例化的执行顺序如何;

    答疑:

    base和this为访问关键字。用于实现继承机制的访问操作,来满足对对象成员的访问,从而为多态机制提供更灵活的处理方式。

    1、在静态成员中使用base和this都是不允许的,因为base和this访问的都是类的实例,也就是对象,而静态成员只能由类来访问,不能由对象访问。
    
    2、base常用于在派生类中访问重写的基类成员,this常用于引用类的当前实例,也包括继承而来的方法,通常可以隐藏this。
    
    3、base可以访问基类的公有和受保护成员,不能访问私有成员,this指代类本身,可以访问本类的所有成员。
    
    4、base的指向遵从最近原则(重载了该方法的最近的类方法)。
    
    5、实例化首先实例化基类,类的实例化总是先调用System.Object.Object()开始。所以base和this应用于构造函数时,都是先实例化base()或者this()的。

    扩展:

    this可以用来声明索引器。

  • 相关阅读:
    The FLARE On Challenge
    CVE-2013-2551漏洞成因与利用分析(ISCC2014 PWN6)
    CVE-2014-0322漏洞成因与利用分析
    CVE-2013-3897漏洞成因与利用分析
    译:《深入解析WINDOWS VISTA APC》——PART 1
    MemoryInjector 无痕注入
    一个APC引起的折腾 之题外记
    一个APC引起的折腾
    2020
    javascriptcore调试笔记
  • 原文地址:https://www.cnblogs.com/Med1tator/p/6597640.html
Copyright © 2011-2022 走看看