黑马程序员技术交流社区

标题: 小问题 [打印本页]

作者: 杨丽静    时间: 2013-12-4 10:28
标题: 小问题
本帖最后由 杨丽静 于 2014-1-15 12:03 编辑

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

作者: 秋晨    时间: 2013-12-4 11:19
初始化优先级顺序为
静态代码块>构造代码块>构造函数

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

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

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


作者: 胡永城    时间: 2013-12-4 11:23
  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. }
复制代码

作者: cuilitang    时间: 2013-12-4 11:39
静态代码块,初始化类
构造代码块初始化对象
构造方法创建对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2