/*一个类的静态代码块,构造代码块,构造方法的执行流程:
静态代码块>构造代码块>构造方法
2.静态的内容是随着类的加载而加载
静态代码块的内容会优先执行
3.子类初始化之前先进行父类的初始化
*/
class Fu{
static {
System.out.println("静态代码块fu");
}
{
System.out.println("构造代码块fu");
}
public Fu() {
System.out.println("构造方法fu");
}
}
class Zi extends Fu{
static {
System.out.println("静态代码块zi");
}
{
System.out.println("构造代码块zi");
}
public Zi(){
System.out.println("构造方法zi");
}
}
public class Fuzi {
public static void main(String[] args){
Zi z= new Zi();
}
静态代码块>构造代码块>构造方法
2.静态的内容是随着类的加载而加载
静态代码块的内容会优先执行
3.子类初始化之前先进行父类的初始化
*/
class Fu{
static {
System.out.println("静态代码块fu");
}
{
System.out.println("构造代码块fu");
}
public Fu() {
System.out.println("构造方法fu");
}
}
class Zi extends Fu{
static {
System.out.println("静态代码块zi");
}
{
System.out.println("构造代码块zi");
}
public Zi(){
System.out.println("构造方法zi");
}
}
public class Fuzi {
public static void main(String[] args){
Zi z= new Zi();
}
}
执行后结果