直接上源碼:java
public class Demo4 { { //這裏是代碼塊 System.out.println("這裏是代碼塊"); } static { //這裏是靜態代碼塊 System.out.println("這裏是靜態代碼塊"); } public Demo4() { System.out.println("這裏是構造方法"); } public static void main(String[] args) { Demo4 d1=new Demo4(); System.out.println("----------------------------"); Demo4 d2=new Demo4(); } }
執行結果:對象
這裏是靜態代碼塊 這裏是代碼塊 這裏是構造方法 ---------------------------- 這裏是代碼塊 這裏是構造方法
代碼塊直接寫在一對大括號內,主要用來對變量進行初始化。blog
靜態代碼塊也是代碼塊的一種,可是static修飾只能執行一次,由上運算結果能夠看出不管建立多少個對象,靜態代碼塊只會執行一次。源碼
這三者的執行順序是:靜態代碼塊>代碼塊>構造器class