前言
那一年,呼延十又回想起被加载顺序支配的恐惧,笔试题上,好几个类,几个方法,几个输出语句,让你按照顺序写出输出.我真的是有一句….
但是呢,我们还是有了解一下的必要的,在编码过程中有许多的应用....:
首先在main方法中,调用了B类的构造方法....加载A类的构造方法,输出A----- constructor.
加载B类的普通变量,调用了方法,输出B----- default.
加载B类的构造方法,输出了B----- constructor....在这期间,发现一些小的知识点,也记录一下.
静态变量,静态代码块的加载顺序只和代码编写的顺序有关.
普通变量及构造方法,顺序一定是先普通变量,再构造方法的....经常在编码过程中需要给常量的List,Map赋值,这个时候我们希望程序启动赋值一次即可,而程序中的其他方法可能就需要使用这些常量了,因此一般使用定义常量Map,并在静态代码块中给其赋值.这样可以保证后续的使用不会拿到空的