zoukankan      html  css  js  c++  java
  • super关键字

    super:父类的,从父类中开始查找的。

    要通过super进行访问的(属性、方法、构造器)都不能是私有的,跨包还不能是缺省的。

    (1)super.成员变量

    当子类具有与父类同名的成员变量时,可以通过super.成员变量进行区分,表示访问父类的成员变量。

    (2)super.成员方法

    当子类“重写”了父类的某个方法,在子类中又想要调用父类被重写的方法时,就可以使用super.成员方法。

    (3)super()或super(实参列表)

    在子类构造器的首行。

    super():表示调用父类的无参构造。

    super(实参列表):表示调用父类的有参构造。

     

    小结:this.和super.:

    如果用的是this.,那么从子类先开始找,如果没有,再会往上追溯,从父类中查找。即this.访问的成员,可能是本类声明的,也可以是本类从父类继承的。

    如果用的是super.,那么从直接父类开始找,如果直接父类没有,再往上追溯,从间接父类找。即super.访问的成员,一定是父类的,可定不是子类自己的。

    如果既没有写this.,又没有写super.,如果访问的是变量,那么看是否有局部变量,如果有局部变量,先考虑局部变量;如果访问的是方法,那么从这代码的当前类开始找。如果子类有重写的方法,要执行重写的。

  • 相关阅读:
    看看优酷是怎么做网络投票的?
    CURL的学习和应用
    PHP生成word的三种方式
    感谢
    网站后台权限设计
    ORACLE 11g 导出数据
    第一份blog
    查看tomcat的内存情况
    执行sshadd时出现Could not open a connection to your authentication agent
    读取SSDT当前函数地址
  • 原文地址:https://www.cnblogs.com/panyizuoshan/p/11454555.html
Copyright © 2011-2022 走看看