Java类的初始化顺序
2016-07-15 15:14
555 查看
代码:
输出:
如果将代码第16行替换为第15行,则输出为
Java类的初始化顺序:
父类--静态变量
父类--静态初始化块
子类--静态变量
子类--静态初始化块
子类main方法
父类--变量
父类--初始化块
父类--构造器
子类--变量
子类--初始化块
子类--构造器
public class Base { private String baseName = "base"; public Base() { callName(); } public void callName() { System.out.println(baseName); } static class Sub extends Base { //private static String baseName = "sub"; private String baseName = "sub"; public void callName() { System.out.println(baseName); } } public static void main(String[] args) { Base b = new Sub(); } }
输出:
null
如果将代码第16行替换为第15行,则输出为
Sub
Java类的初始化顺序:
父类--静态变量
父类--静态初始化块
子类--静态变量
子类--静态初始化块
子类main方法
父类--变量
父类--初始化块
父类--构造器
子类--变量
子类--初始化块
子类--构造器
相关文章推荐
- 浅析 Java 拷贝
- 项目中出现java.lang.NoSuchMethodException 继续整理
- 如何设定jbutton的大小(使其大小固定,不因布局方式改变而改变???)
- 《深入理解Java虚拟机》调优案例分析与实战
- Java内存溢出处理
- Javassist 代码转换
- 测试一下pack()在不同layout上的效果
- MyBatis中#和$区别
- java函数调用web service
- 在eclipse中安装 properity editor 的目的和注意事项
- rxjava 学习
- Java设计模式--策略模式
- Javassist操作方法总结
- 迭代器,Java嵌套类和内部类
- Java成员变量与局部变量同名
- Java对象创建过程
- Java实现从学校教务网上爬取数据(一)—— 虚拟登陆
- Eclipse快捷键 10个最有用的快捷键
- java内部编码
- 笔记之Java的三大特性