在子类中想要使用被子类隐藏的成员变量或方法就需要使用关键字super。
定义一个父类Census,代码如下
public class Census{
String idno;
String name;
String sex;
String loedu;
int age;
public Census() {
//无参的构造方法
}
public Census(String name,String idno,String sex,int age,String loedu) {
//带参的构造方法
this.name = name;
this.idno = idno;
this.sex = sex;
this.age = age;
this.loedu = loedu;
}
void showMess(){
System.out.println("显示普查信息");
}
}
定义一个Census的子类FujianQZ
public class FujianQZ extends Census{
String region;
public FujianQZ() {
// 无参的构造方法
super();//调用父类的构造方法(可省略)
}
public FujianQZ(String region,String name,String idno,String sex,int age,String loedu) {
// 有参的构造方法
super(name,idno,sex,age,loedu);
this.region = region;
}
void showMess(){
super.showMess();//调用父类的构造方法
System.out.print(region+":");
System.out.println(idno+" "+name+" "+sex+" "+age+" "+loedu);
}
}
其中super.showMess() 调用的是父类Census中的方法,输出结果为显示普查信息。
再定义一个测试方法 MainClass ,代码如下:
public class MainClass{
public static void main(String args[]){
FujianQZ fjqz=new FujianQZ("福建泉州", "张三", "3505*****1234", "男", 18,"本科");
fjqz.showMess();
}
}
输出结果为:
显示普查信息
福建泉州:3505*****1234 张三 男 18 本科