代码如下所示:

Child.java

package my;

public class Child extends Parent
{
	public  Child() {
		System.out.println("Child构造函数!");
	}
}



Parent.java

package my;

public class Parent
{
	int a;
	public  Parent() {
		System.out.println("Parent无参构造函数!");
	}
	public  Parent(int a) {
		this.a=a;
		System.out.println("Parent有参构造函数!");
	}
	
}



HelloWord.java

package my;

public class HelloWorld
{

	public static void main(String[] args)
	{		
		Child a=new Child();
		
	}

}


运行结果如下图:


(根据下断点可知道,他先执行了Child构造方法但没有执行里面的内容,然后去执行Parent的个构造方法和内容,再执行Child的内容)


现在要指定Parent的构造方法

修改Child.java如下所示:

package my;

public class Child extends Parent
{
	public  Child() {
		super(1);
		System.out.println("Child构造函数!");
	}
}

运行结果如下图:


更多推荐

Java基础入门笔记-构造方法的继承