JAVA初始化顺序
来源:互联网 发布:sql导入excel数据 编辑:程序博客网 时间:2024/05/16 00:51
顺序如下:
父类静态属性父类静态块
子类静态属性
子类静态块
父类属性默认值
子类属性默认值
父类属性
父类块
父类构造器
子类属性
子类块
子类构造器
遵循3个原则:
1.静态块>>块
2.成员变量赋值>>块赋值>>构造器赋值
3.父类的块>>父类构造器>>自身块>>自身构造器
public class Test extends Parent { private static String str = "子类静态属性3"; static { out.println(str); out.println("子类静态块4"); } private String string = "子类属性10"; { out.println(string); out.println("子类块11"); } private boolean result = true; public Test() { super(); out.println("子类构造器12"); } public String getSubString() { return !result ? "子类属性默认值6" : string; } public static void main(String[] args) { new Test(); }}class Parent { private static String str = "父类静态属性1"; static { out.println(str); out.println("父类静态块2"); } { out.println(getParentString()); out.println(getSubString()); } private String string = "父类属性7"; { out.println(string); out.println("父类块8"); } private boolean result = true; public Parent() { super(); out.println("父类构造器9"); } public String getSubString() { return null; } public String getParentString() { return !result ? "父类属性默认值5" : string; }}
println:
父类静态属性1
父类静态块2
子类静态属性3
子类静态块4
父类属性默认值5
子类属性默认值6
父类属性7
父类块8
父类构造器9
子类属性10
子类块11
子类构造器12
0 0
- java-java初始化顺序
- Java初始化顺序
- JAVA 初始化顺序
- JAVA初始化顺序
- Java程序初始化顺序
- Java初始化顺序
- [java]初始化顺序
- java变量初始化顺序
- java 初始化顺序
- Java初始化的顺序
- JAVA对象初始化顺序
- java对象初始化顺序
- JAVA 类初始化顺序
- JAVA初始化顺序
- Java 静态初始化顺序
- Java类初始化顺序
- java初始化顺序
- JAVA初始化顺序
- 进程和线程的联系和区别(沥血推荐)
- 淘宝 tsar 安装以及从Tengine/Nginx端采集数据.
- DrawNode遮罩
- iOS应用架构谈 开篇
- Effective Java——并发
- JAVA初始化顺序
- 在linux下install sublime text2
- Google’s fused location API for Android
- Linux CPU实时监控mpstat命令详解
- request,路径问题,转发和重定向
- hdu5248序列变换(二分+贪心)基础题
- MyEclipse整合SVN
- 【JAVA基础知识总结】Java I/0流概述以及使用方法
- mysql用户资源限制