java中父类与子类构造函数的执行顺序

原创 2007年10月13日 21:29:00

每次当用new关键字创建出一个子类对象时,那么程序会先执行父类中不带参数的构造函数,然后再执行子类的构造函数.

eg:   我建了三个类,一个是父类(A_constructor) , 第二个是子类(B_constructor) , 第三个是测试用的类(Test_constructor) . 代码及运行结果如下

父类:

public class A_constructor {

 public A_constructor(){
  System.out.println("父类的无参数的构造函数A_constructor()");
 }
 public A_constructor(int n){
  System.out.println("父类带参数的构造函数A_constructor(n) : "+n);
 }
}

子类:

public class B_constructor extends A_constructor{
 public B_constructor(){
  System.out.println("子类的无参数构造函数B_constructor()");
 }
 public B_constructor(int n){
  System.out.println("子类带参数的构造函数B_constructor(n): "+n);
 } }

测试类:

public class Test_constructor {

 public static void main(String args[]){
  B_constructor one = new B_constructor();  //不带参数
  B_constructor two = new B_constructor(2);  //带了参数
  System.out.println("测试结束");
 }
}


运行结果:

父类的无参数的构造函数A_constructor()
子类的无参数构造函数B_constructor()
父类的无参数的构造函数A_constructor()
子类带参数的构造函数B_constructor(n): 2
测试结束

JAVA中静态代码块、构造方法、Super()父类与子类之间执行顺序

PS:今天群里一个小伙伴笔试,匆匆发来的求助信息。。。1.父类、子类之间代码块与构造方法public class HelloA { public HelloA(){ System....
  • J080624
  • J080624
  • 2016年09月21日 16:20
  • 1198

Java子父类间静态代码块、构造代码块、构造方法的执行顺序

先看一段测试
  • u012248099
  • u012248099
  • 2014年07月05日 12:15
  • 1992

关于子类对象的构造函数和父类构造函数的执行顺序

我们分别为父类和子类添加显式的构造函数,代码如下 01 class Person 02     { 03         private ...
  • u013095889
  • u013095889
  • 2016年10月13日 10:36
  • 2060

java继承中父类和子类静态、非静态代码块,构造函数,静态方法的执行顺序

java继承中父类和子类静态、非静态代码块,构造函数,静态方法的执行顺序
  • zhangjq520
  • zhangjq520
  • 2017年04月14日 15:25
  • 439

java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题

package job;    public class TestConsSeq {        public static void main(String[] args) {          ...
  • rae8422
  • rae8422
  • 2012年10月10日 10:30
  • 500

java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题

package job; public class TestConsSeq { public static void main(String[] args) { /* * ...
  • shijinupc
  • shijinupc
  • 2012年06月26日 11:36
  • 8140

java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题

[java] view plaincopyprint? package job;    public class TestConsSeq {        public static v...
  • huojunlin
  • huojunlin
  • 2012年06月28日 10:42
  • 187

java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题

package job; public class TestConsSeq { public static void main(String[] args) { /* * 几大原则 ...
  • iberr
  • iberr
  • 2012年10月13日 17:49
  • 505

Java父类与子类中静态代码块 实例代码块 静态变量 实例变量 构造函数执行顺序

实例化子类时,父类与子类中的静态代码块、实例代码块、静态变量、实例变量、构造函数的执行顺序是怎样的? 代码执行的优先级为: firest:静态部分 second:实例化过程 详...
  • leunging
  • leunging
  • 2016年11月03日 20:16
  • 367

java 父类子类静态成员,实例成员,构造函数初始化的顺序

java中的成员分为:  静态成员 : 静态成员变量,静态代码块,静态成员方法  实例成员:实例成员变量,实例代码块,实例成员方法  构造方法  析构方法  下面做的实验,主要是验证 当ne...
  • syy0377
  • syy0377
  • 2013年09月23日 15:51
  • 702
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java中父类与子类构造函数的执行顺序
举报原因:
原因补充:

(最多只允许输入30个字)