码迷,mamicode.com
首页 > 编程语言 > 详细

java初始化构造函数调用顺序

时间:2015-10-22 23:54:46      阅读:267      评论:0      收藏:0      [点我收藏+]

标签:

类初始化时构造函数调用顺序:

  (1)初始化对象的存储空间为零或null值;
  (2)调用父类构造函数;
  (3)按顺序分别调用类成员变量和实例成员变量的初始化表达式;
  (4)调用本身构造函数

例子:
public class Dollar extends Money{
     Rmb r=new Rmb()
     public Dollar(){
      System.out.println("Dollar is construct!");
     }
     public static void main(String[] args){

      new Dollar();  

   }
}

class Money{
 public Money(){
  System.out.println("Money is construct");
 }
}

class Rmb{
 public Rmb(){
  System.out.println("RMB is construct");技术分享
 }
}

输出结果:
Money is construct
RMB is construct
Dollar is construct!

 

我们再自己写一个程序,以测试运行顺序:
技术分享
技术分享

技术分享技术分享
输出结果:

技术分享

   父类类成员变量说明此时的运行顺序为:

  1.    父类静态块
  2.    自身类成员变量
  3.    自身静态块
  4.    父类实例成员变量
  5.    父类块
  6.    父类构造器
  7.    自身实例成员变量
  8.    自身块
  9.    自身构造器 

 

java初始化构造函数调用顺序

标签:

原文地址:http://www.cnblogs.com/wangsong/p/4903088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!