this关键字的三种用法与super与this关键字图解

this关键字的三种用法

package day01.demo05;

public class Fu {
    int num = 30;
}

 

/*
/*
super关键字用来访问父类内容,而this关键字用来访问本类内容。用法也有三种:
1.在本类的成员方法中,访问本类的成员变量。
2.在本类的成员方法中,访向本类的另一个成员方法。
3。在本类的构造方法中,访同本类的另—个构造方法。在第三种用法当中婪注意:
A. this ( ...)调用也必须是构造方法的第一个语句,唯——个。
B. super和this两种构造调用,不能同时使用。
 */

public class Zi extends Fu {

    int num = 20;

    public Zi(){
//        super();这一行不再赠送
        this(123);
//        this(1,2)本来的无参构造,调用本类的有参构造  错误写法
    }
    public Zi(int n){

    }
    public Zi(int n,int m){

    }

    public void showNum(){
        int num = 10;
        System.out.println(num);
        System.out.println(this.num);
        System.out.println(super.num);
    }
    public void methodA(){
        System.out.println("AAA");
    }
    public void methodB(){
        methodA();
        System.out.println("BBB");
    }
} 
super与this关键字图解
父类空间优先于子类对象产生
在每次创建子类对象时,先初始化父类空间,再创建其子类对象本身。目的在于子类对象中包含了其对应的父类空
间,便可以包含其父类的成员,如果父类成员非private修饰,则子类可以随意使用父类成员。代码体现在子类的构
造方法调用时,一定先调用父类的构造方法。理解图解如下: 

 

superthis的含义
super :代表父类的存储空间标识(可以理解为父亲的引用)
this :代表当前对象的引用(谁调用就代表谁)
superthis的用法 
1. 访问成员
this.成员变量 ‐‐ 本类的
super.成员变量 ‐‐ 父类的
this.成员方法名() ‐‐ 本类的
super.成员方法名() ‐‐ 父类的
用法演示,代码如下:
package day01.demo07;

public class Animal {
public void eat() {
System.out.println("animal : eat");
}
}
 
package day01.demo07;

public class Cat extends Animal {
public void eat() {
System.out.println("cat : eat");
}
public void eatTest() {
this.eat(); // this 调用本类的方法
super.eat(); // super 调用父类的方法
}
}
package day01.demo07;

public class ExtendsDemo08 {
public static void main(String[] args) {
Animal a = new Animal();
a.eat();
Cat c = new Cat();
c.eatTest();
}
}

 

2. 访问构造方法
this(...) ‐‐ 本类的构造方法
super(...) ‐‐ 父类的构造方法 
子类的每个构造方法中均有默认的super(),调用父类的空参构造。手动调用父类构造会覆盖默认的super()
super() this() 都必须是在构造方法的第一行,所以不能同时出现。
 
 

 

 

 

/*super关键字用来访问父类内容,而this关键字用来访问本类内容。用法也有三种:1.在本类的成员方法中,访问本类的成员变量。2.在本类的成员方法中,访向本类的另一个成员方法。3。在本类的构造方法中,访同本类的另—个构造方法。在第三种用法当中婪注意:A. this ( ...)调用也必须是构造方法的第一个语句,唯——个。B. super和this两种构造调用,不能同时使用。*/
posted @ 2022-07-04 09:19  zj勇敢飞,xx永相随  阅读(136)  评论(0编辑  收藏  举报