Java编程思想--构造器初始化顺序
2013-05-16 14:02
405 查看
在类内部,变量定义的先后顺序决定了初始化的顺序。即使变量定义散布于方法定义之间,它们仍旧会在任何方法(包括构造器)被调用之前得到初始化。
结果
Windows(1)
Windows(2)
Windows(3)
House()Windows(33)
f()
由此可见,先初始化变量,其次构造方法,另外,w3这个引用被初始化两次。
package javastatic; class Window{ Window(int marker){ System.out.println("Windows("+marker+")"); } } class House{ Window w1=new Window(1); House(){ System.out.println("House()"); w3=new Window(33); } Window w2=new Window(2); void f(){ System.out.println("f()"); } Window w3=new Window(3); } public class OrderOfInitialization { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub House house=new House(); house.f(); } }
结果
Windows(1)
Windows(2)
Windows(3)
House()Windows(33)
f()
由此可见,先初始化变量,其次构造方法,另外,w3这个引用被初始化两次。
相关文章推荐
- JAVA编程思想学习总结:第五章——初始化与清理
- java编程思想---第五章(初始化与清理)
- 5初始化与清理-Java编程思想
- 【Java编程思想】(1)初始化与清理
- Java编程思想:第5章 初始化与清理
- java编程思想-第五章-初始化与清理
- java 编程思想--初始化与清理
- Java编程思想之初始化与清理
- java---静态语句块、构造语句块、构造器的初始化顺序
- JAVA编程思想(第4版) 构造器初始化及顺序
- java编程思想static之程序执行顺序
- Java类的初始化顺序 (静态变量、静态初始化块、变量、初始化块、构造器)
- Java编程思想——第五章 清理与初始化
- JAVA编程思想-第五章 初始化与清理
- Java编程思想笔记_以构造函数确保初始化的进行
- java静态模块及构造器初始化顺序
- Java——继承中构造器、实例域初始化顺序
- Java编程思想学习笔记之构造器
- java编程思想继承之程序执行顺序
- Java编程思想ch5 初始化和清理