代碼塊與靜態代碼塊與靜態方法的加載順序

 
public abstract class ClassLoadingTest {

    public static void main(String[] args) { User user3 = new User(); } }


public
class User { public static User user= new User("wang",18); public static void userSay(){ System.out.println("調用userSay靜態方法"); user.say(); } static{ User.userSay(); System.out.println("進入靜態構造代碼塊"); User user2333 = new User("wang2333", 19); user2333.say(); user.say(); } { System.out.println("進入代碼塊"); } private String name; private int age; public User() {} public User(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void say(){ System.out.println(this.getName() + "調用say方法"); } }
執行結果:進入代碼塊
調用userSay靜態方法
wang調用say方法
進入靜態構造代碼塊
進入代碼塊
wang2333調用say方法
wang調用say方法
進入代碼塊
相關文章
相關標籤/搜索