父类
package com.example.demo.demo;
public class Father {
Father(){
System.out.println("父类无参构造方法");
}
Father(String str){
System.out.println("父类有参构造方法");
}
int age = 1;
static String name = "father";
public int getAge(){
System.out.println("father-getAge");
return age;
}
public static String getName(){
System.out.println("father-getName");
return name;
}
}
子类
package com.example.demo.demo;
public class Son extends Father {
Son(){
super("str");
System.out.println("子类无参构造方法");
}
int age = 2;
static String name = "son";
@Override
public int getAge(){
System.out.println("son-getAge");
return age;
}
public static String getName(){
System.out.println("son-getName");
return name+"son";
}
}
测试方法
class Test {
@Test
void test() {
Father father = new Son();
Son son = new Son();
System.out.println("静态成员变量");
System.out.println("father.name = " + father.name);
System.out.println("son.name = " + son.name);
System.out.println("非静态成员变量");
System.out.println("father.age = " + father.age);
System.out.println("son.age = " + son.age);
System.out.println("静态方法");
System.out.println("father.getName() = " + father.getName());
System.out.println("son.getName() = " + son.getName());
System.out.println("非静态方法");
System.out.println("father.getAge() = " + father.getAge());
System.out.println("son.getAge() = " + son.getAge());
}
}
执行结果
父类有参构造方法
子类无参构造方法
父类有参构造方法
子类无参构造方法
静态成员变量
father.name = father
son.name = son
非静态成员变量
father.age = 1
son.age = 2
静态方法
father-getName
father.getName() = father
son-getName
son.getName() = sonson
非静态方法
son-getAge
father.getAge() = 2
son-getAge
son.getAge() = 2
Process finished with exit code 0