super and this

若是子类声明了一个与父类的成员变量同名的成员变量,则称父类的成员变量被隐藏(hiding)。html

若是子类声明了一个与父类成员方法同名的成员方法,则称父类的该成员方法被重写(overriding)。java

关键字this 和 super分别用来指明子类和父类中同名成员变量或成员方法。ide

当父类的成员变量、子类的成员变量和类方法使用的局部变量三者同名,或其中的二者同名时,能够使用关键字this和super来指定所要使用的变量。this

class A{
    int x;    //在类A中声明了成员变量X
}

class B extends A{    //类B继承类A,同时也继承了类A的成员变量X。
    int x;            //在类B中又声明了一个成员变量X

    
    void m(){
       int x;        //方法m中又声明了本身的局部变量x
       super.x=2;    //  super修饰的是其所在类父类即类A的x
       this.x=1;     //  this 修饰的是其所在类即类B的x
       x=100;        //   这里的x是方法m自己的局部变量x
    }
}

super关键字  引用blog  http://www.cnblogs.com/xdp-gacl/p/3635948.html
htm

相关文章
相关标签/搜索