/*
子类调用父类有参构造方法
子类中的所有!! 构造方法都会!!访问父类中的无参构造方法
*/
class Fu
{
String name;
int age;
public Fu () {
System.out.println("正在调用父类无参构造");
}
public Fu (String name, int age)
{
this.name = name;
this.age = age;
System.out.println("正在调用父类有参构造方法");
}
//定义一个show方法用来虚区name和age的值
//该方法可以被子类继承
public void show()
{
System.out.println("name"+name+"---"+"age"+age);
}
}
class Zi extends Fu
{
//首先定义子类的无参构造
public Zi () {
System.out.println("正在调用子类无参构造");
}
//如果想在子类构造方法中 调用父类构造方法有参 首先 需要做的是定义子类有参构造
//然后在其中调用带参数值的父类构造方法
public Zi (String name,int age)
{
super("汪汪",5);
//super.name = name;
//super.age = age;
System.out.println("正在调用子类带参构造");
}
}
//主方法所在
class ExtendsDemo
{
public static void main(String[] args)
{
//new一个子类对象用来测试在子类中调用父类无参构造
Zi z = new Zi();
z.show();
//new一个子类对象用来测试在子类中调用父类带参构造
Zi z2 = new Zi("喵喵",2);
z2.show();
}
}
‘
上面这段代码可以在代码运行到加载子类父类的构造函数时打印出相应的 正在调用
运行以后可以帮助对调用的过程加深一些理解