07.this和super的区别

作者: 今天庹 | 来源:发表于2018-09-19 21:29 被阅读0次

this与super区别

package com.itheima;
/*
 * this和super的区别
 *          this:当前对象的应用
 *              调用子类的成员变量
 *              调用子类的成员方法
 *              在子类的构造方法第一行调用子类其他构造方法
 *          super:子类对象的父类引用
 *              调用父类的成员变量
 *              调用父类的成员方法
 *              在子类的构造方法第一行调用父类的构造方法
 */
public class ExtendsDemo7 {
    public static void main(String[] args) {
        Zi3 z = new Zi3();
        z.function();
    }
}

class Die3 {
    int num = 10;
    
    public Die3() {
        System.out.println("我是父类无参构造");
    }
    
    public Die3(int num) {
        System.out.println("我是父类有参构造");
    }
    
    public void method() {
        System.out.println("我是父类的方法");
    }
}

class Zi3 extends Die3 {
    int num = 30;
    
    public Zi3() {
//      this(1);//第一行不调用子类其他构造或者是父类构造,默认调用父类无参构造
        super();
        System.out.println("我是子类无参构造");
    }
    
    public Zi3(int num) {
        System.out.println("我是子类有参构造");
    }
    
    public void method() {
        System.out.println("我是子类的方法");
    }
    
    public void function() {
//      this.num = 50;
//      System.out.println("num:"+num);
//      this.method();
        
//      super.num = 30;
//      super.method();
        
        System.out.println("num:"+this.num);//如果子类中没有num变量但父类中有则使用this关键字也会调用父类的变量num
    }
}

相关文章

  • 07.this和super的区别

    this与super区别

  • Objective-C self与super的区别

    Objective-C self与super的区别 [self class] 和 [super class] 在当...

  • 技术问 - this与super有什么区别

    this this在内存中 super super在内存中(也是在多态中额成员关系图解) this和super的区别:

  • super和this的区别

    使用方法 如果子类中出现非私有的同名变量,要引用时:(1) 访问父类中的同名变量,用super(2) 访问子类本类...

  • super和this的区别

    首先this在类中基本使用场景可以分为三点: 1.可以代表当前对象,并持有当前对象的地址值,并且作为参数进行传递 ...

  • this和super的区别

    this表示当前对象,super表示父类对象 this.方法:访问本类中的方法,本类不存在则访问父类。super....

  • 【Java】泛型中 extends 和 super 的区别?

    文章转自泛型中 extends 和 super 的区别? 是Ja...

  • self和super的区别

    self和super的区别 self调用自己方法,super调用父类方法 self是类,super是预编译指令 [...

  • class

    1.[self class]和 [super class] self和super的区别: self是类的一个隐藏参...

  • JAVA面试题

    Q:super()与 this()的区别? A:This():当前类的对象,super 父类对象。 Super()...

网友评论

    本文标题:07.this和super的区别

    本文链接:https://www.haomeiwen.com/subject/sbimnftx.html