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

    /*
    super关键字:
    
    super关键字代表了父类空间的引用。
    
    super关键字的 作用:
        1. 子父类存在着同名的成员时,在子类中默认是访问子类的成员,可以通过super关键字指定访问父类的成员。
        2. 创建子类对象时,默认会先调用父类无参的构造方法,可以通过super关键字指定调用父类的构造方法。
    
    super关键字调用父类构造方法要注意的事项:
        1. 如果在子类的构造方法上没有指定调用父类的构造方法,那么java编译器会在子类的构造方法上面加上super()语句。
        2. super关键字调用父类的构造函数时,该语句必须要是子类构造函数中的第一个语句。
        3. super与this关键字不能同时出现在同一个构造函数中调用其他的构造函数。因为两个语句都需要第一个语句。
    
    
    super关键字与this关键字的区别:
        1. 代表的事物不一致。
                1. super关键字代表的是父类空间的引用。    
                2. this关键字代表的是所属函数的调用者对象。
        2. 使用前提不一致。
                1. super关键字必须要有继承关系才能使用。
                2. this关键字不需要存在继承关系也可使用。
        3. 调用构造函数的区别:
                1. super关键字是调用父类的构造函数。
                2. this关键字是调用本类的构造函数。
    */
    class Fu{
            
        int x = 10;
    
        String name;
    
    
        public Fu(){
            System.out.println("Fu类无参的构造方法..");
        }
    
        public Fu(String name){
            this.name = name;
            System.out.println("Fu类带参的构造方法..");
        }
    
    
        public void eat(){
            System.out.println("小头爸爸吃番薯..");
        }
    }
    
    
    class Zi extends Fu{
        
        int x = 20; 
    
        int num;
        
        public Zi(String name,int num){
            super(name); //指定调用了父类带参的 构造方法...
            this(); // 调用本类无参构造方法..
            //super(); //指定调用了父类无参构造方法。。。
            System.out.println("Zi类带参的构造方法..");
        }
    
        public Zi(){
            System.out.println("Zi类无参的构造方法..");
        }
    
    
        public void print(){
            System.out.println("x = " +super.x);
        }
    
        public void eat(){
            System.out.println("大头儿子吃龙虾..");
        }
    }
    
    class Demo9 {
    
        public static void main(String[] args) 
        {
            Zi z = new Zi("狗娃");
    
        
        }
    }
  • 相关阅读:
    找到数组或整数列表中连续子序列的最大和
    编写一个调用的函数,该函数接受一个括号字符串,并确定括号的顺序是否有效
    SRS流媒体服务器搭建及拉取摄像头视频流经opencv处理后再推流至SRS
    (pymysql.err.OperationalError) (1055, "Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column
    微信商户转帐到个人零钱
    双色球1千万,等你来拿!
    python后端开发面试总结
    alipay接入步骤
    Mongodb简单操作
    flask基础
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6264611.html
Copyright © 2011-2022 走看看