Java中 super与 this 关键字的作用

2022-12-21 08:47:25 浏览数 (2)

super关键字:

  • 我们可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类。

this关键字:

  • 指向自己的引用。

注意事项

  • this和super在调用构造方法时,必须出现在构造方法的第一行
  • 当构造方法中不调用别的构造时,系统会默认调用父类的空参构造,当我们手动调用构造后,系统就不会再调用父类的空参构造了
  • 每个构造方法中只能调用一个this或super

简单的例子

代码语言:javascript复制
class Animal {
  void eat() {
    System.out.println("animal : eat");
  }
}
 
class Dog extends Animal {
  void eat() {
    System.out.println("dog : eat");
  }
  void eatTest() {
    this.eat();   // this 调用自己的方法
    super.eat();  // super 调用父类方法
  }
}
 //调用测试
public class Test {
  public static void main(String[] args) {
    Animal a = new Animal();
    a.eat();
    Dog d = new Dog();
    d.eatTest();
  }
}

this和super访问构造方法:

代码语言:javascript复制
this()		调用本类的无参构造
this(参数)   调用本类的有参构造

super()	    调用父类的无参构造
super(参数)  调用父类的有参构造

太简单了,代码这里就不写了

0 人点赞