A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨丽静 中级黑马   /  2013-12-4 10:28  /  1691 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨丽静 于 2014-1-15 12:03 编辑

静态代码块 构造代码块  构造函数我写的这个顺序是不是程序初始化时执行的顺序
程序初始化时执行的顺序:  静态代码块---->构造代码块----> 构造函数

评分

参与人数 1黑马币 +6 收起 理由
狼王 + 6 赞一个!

查看全部评分

3 个回复

倒序浏览
初始化优先级顺序为
静态代码块>构造代码块>构造函数

构造代码块 :给对象进行初始化,对象一建立就运行而且优于构造函数执行。

构造代码块和构造函数的区别 :构造代码块是给所有对象进行统一初始化,而构造函数是给指定的对象进行初始化。

静态代码块 :随着类的加载而执行,只执行一次。

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
狼王 + 1 + 3 很给力!

查看全部评分

回复 使用道具 举报 1 0
  1. /**
  2. * 对于静态变量、静态初始化块、变量、初始化块、构造器,
  3. * 它们的初始化顺序依次是
  4. * (静态变量、静态初始化块)>(变量、初始化块)>构造器。
  5. */
  6. public class ClassDemo {
  7.          // 静态变量   
  8.     public static String staticField = "静态变量";   
  9.     // 变量   
  10.     public String field = "变量";   
  11.     // 静态初始化块   
  12.     static {   
  13.         System.out.println(staticField);   
  14.         System.out.println("静态初始化块");   
  15.     }   
  16.     // 初始化块   
  17.     {   
  18.         System.out.println(field);   
  19.         System.out.println("初始化块");   
  20.     }   
  21.     // 构造器   
  22.     public ClassDemo() {   
  23.         System.out.println("构造器");   
  24.     }   
  25.    
  26.     public static void main(String[] args) {   
  27.         new ClassDemo();   
  28.     }  
  29. }
复制代码

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
狼王 + 1 + 3 赞一个!辛苦了。。。

查看全部评分

回复 使用道具 举报
静态代码块,初始化类
构造代码块初始化对象
构造方法创建对象

评分

参与人数 1黑马币 +3 收起 理由
狼王 + 3 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马