super关键字表示超(父)类的意思,而this变量代表对象本身的意思。
接着昨天的代码:
//Test1表示父类
public class Test1 {
private String name;
private int age;
private String email;
public Test1(String name, int age , String em) {
this.name = name;
this.age = age;
email = em;
}
public Test1(){
this("jack",18,"123@123.com");
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setEmail(String email) {
this.email = email;
}
public String getEmail() {
return email;
}
public Test1 getTest(){
return this;
}
public void getNum(){
int age;
age=this.age+1;
System.out.println(age);
}
}
//子类Child
public class Child extends Test1{
public Child(String name, int age, String email){
super(name,age,email);//调用父类具有相同形参的构造函数
}
public void getNum(){
super.getNum(); //调用父类的方法
}
public static void main(String args[]) {
Child c = new Child("Rose", 19, "123@345.com");
System.out.println("name:" + c.getName() + ",age:" +c.getAge()+",email:"+c.getEmail()+"num:");
c.getNum();
}
}
运行结果:
name:Rose,age:19,email:123@345.comnum:
20