Java中的super和this关键字之间有什么区别?


this是Java中的一个关键字,用作当前类对象的引用。使用它,你可以:

  • 在构造器或方法中,将实例变量与同名的局部变量区分开来。
  • 在类中从其他构造器(带参数的构造器或默认构造器)调用一个构造器。这被称为显式构造器调用。

示例

class Superclass {
   int age;
   Superclass(int age) {
      this.age = age;
   }
   public void getAge() {
      System.out.println("The value of the variable named age in super class is: " +age);
   }
}

super是Java中的一个关键字,用作超类的对象引用。与this关键字类似,

  • 如果超类和子类的成员同名,它用于区分这些成员。
  • 它用于从子类调用超类构造器。

示例

现场演示

class Superclass {
   int age;
      Superclass(int age) {
      this.age = age;
   }
   public void getAge() {
      System.out.println("The value of the variable named age in super class is: " +age);
   }
}
public class Subclass extends Superclass {
   Subclass(int age) {
      super(age);
   }
   public static void main(String argd[]) {
      Subclass s = new Subclass(24);
      s.getAge();
   }
}

输出

The value of the variable named age in super class is: 24

更新于:2019年7月30日

558次浏览

Kickstart Your Career

通过完成课程获得认证

开始
广告
© . All rights reserved.