zoukankan      html  css  js  c++  java
  • Java super与this

    一、super()与this()

      1、super():

      • 只能出现在子类构造器中
      • 且必须位于第一行。
      • 所有子类构造器默认调用super()方法
      • 参数决定使用父类哪一个构造器。
      • 若父类没有相应的构造器,则报错。 

      2、this():

      • 只能出现在本类的构造器中
      • 且必须位于第一行
      • 用于调用本类中其他构造方法
      • 不能与super()同时出现在一个构造方法中

    二、super、this关键字

      1、this

      • 指向当前对象本身
      • 形参与成员名重名,用于区分
      • this()

      2、super

      • 指向本类的引用
      • 子类的成员变量或方法与父类中的成员变量或方法重名,用于区分
      • super()

    三、特别说明

      1、子类继承父类所有的属性和方法(构造方法除外;private可以说没有继承,也可以说继承了但是没有访问权限)

      2、子类实例化时,先实例化父类再实例化子类自己(先调用父类构造器,再调用子类构造器)

      3、在子类中创建构造器时,必须调用父类的构造器(默认调用父类的无参构造器)。

      4、static环境中不可在使用this、super关键字

    四、代码

    public class Demo1 {
    
        static int value = 9; // 注意value是静态的成员变量
    
        public static void main(String[] args) throws Exception {
            new Demo1().printValue();
        }
    
        private void printValue() {
            int value = 69;
            System.out.println(this.value);
        }
    }
    
    结果: 9
  • 相关阅读:
    [swustoj 1021] Submissions of online judge
    [swustoj 404] 最小代价树
    [swustoj 917] K-lucky-number
    [swustoj 183] 种树
    [LA 3887] Slim Span
    [ahu 1248] NBA Finals
    用js获取当前月份的天数
    WampServer
    jquery checkbox选中、改变状态、change和click事件
    为什么排版引擎解析 CSS 选择器时一定要从右往左解析?
  • 原文地址:https://www.cnblogs.com/zxguan/p/7786799.html
Copyright © 2011-2022 走看看