Java中的super关键字和super()方法

Java'super'关键字

  • super关键字是在Java中引入的。

  • 借助super关键字,我们可以访问父类的实例变量(即,当父类和子类包含具有相同名称的变量时,我们可以使用super关键字访问父类变量)。

示例

class Parent{
	String str = "I am MCA" ;
}

class Child extends Parent{
	String str;

	Child(String str){
		System.out.println(super.str);
	}
	
	public static void main(String[] args){
		Child ch = new Child("I am Preeti Jain");
	}
}

输出结果

D:\Java Articles>java Child
I am MCA
  • 借助super关键字,我们可以访问父类的方法(即,当父类和子类包含名称相同的方法时,我们可以使用super关键字访问父类的方法)。

示例

class ParentMethod{
	public void print(){
		System.out.println("I am in Parent Class");
	}
}

class ChildMethod extends ParentMethod{
	public void print(){
		super.print();
		System.out.println("I am in Child Class");
	}
	public static void main(String[] args){
		ChildMethod cm = new ChildMethod();
		cm.print();
	}
}

输出结果

D:\Java Articles>java ChildMethod
I am in Parent Class
I am in Child Class

Java'super()'方法

  • java中引入的super()方法。

  • 借助super()方法,我们可以调用父类的构造函数。

示例

class ParentConstructor{
	ParentConstructor(){
		System.out.println("I am in parent constructor");
	}
}

class ChildConstructor extends ParentConstructor{
	ChildConstructor(){
		super();
	}
	
	public static void main(String[] args){
		ChildConstructor cc = new ChildConstructor();
	}
}

输出结果

D:\Java Articles>java ChildConstructor
I am in parent constructor