用super操作被隐藏的成员变量和方法
子类一旦隐藏(覆盖)了继承的成员变量及方法,子类创建的对象就不在拥有该成员变量及方法。该成员变量及方法的调用由super负责。
使用super调用父类的构造方法
当用子类的构造方法创建一个子类对象时,子类的构造方法总是先调用父类的某个构造方法。由于子类不继承父类构造函数。这是就要用到super语句了。如果不用默认使用super()。(注意super语句必须是子类构造方法的头一条语句)
package exam4;
class Student{
int number;
String name;
Student(int number,String name){
this.number=number;
this.name=name;
System.out.println("number:"+number+" name:"+name);
}
}
class Stu1 extends Student{
boolean m;
Stu1(int number,String name,boolean b){
super(number,name);
m=b;
System.out.println("婚否"+m);
}
}
public class super关键字 {
public static void main(String args[]) {
Stu1 s=new Stu1(2000,"张三",false);
}
}