java中Block代码块的四种用法 附带速记卡
直接上速记卡
特别注意:
当有继承关系时,执行顺序为
父类静态代码块>子类静态代码块 >父类构造代码块>父类空构造>子类构造代码块>子类空构造
主要针对这个顺序,我们简单撸一个Code
package Block;
public class Fu {
static int i;
int j;
static {
i = 15;
int i = 11;
System.out.println("父类静态Block");
}
{
int c = 1;
j = 15;
System.out.println("父类构造Block");
}
public Fu() {
System.out.println("父类构造器");
// TODO Auto-generated constructor stub
}
}
package Block;
public class Son extends Fu {
static int r;
int t;
static {
r = 15;
System.out.println("子类静态Block");
}
{
t = 13;
System.out.println("子类构造Block");
}
public Son() {
System.out.println("子类构造器");
}
public static void main(String[] args) {
Son son = new Son();
System.out.println("静态属性" + son.r + "成员属性" + son.t);
}
}
执行结果
父类静态Block
子类静态Block
父类构造Block
父类构造器
子类构造Block
子类构造器
静态属性15成员属性13
End!