溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java實例域初始化方式和順序

發(fā)布時間:2020-07-29 10:44:44 來源:億速云 閱讀:128 作者:小豬 欄目:編程語言

小編這次要給大家分享的是Java實例域初始化方式和順序,文章內(nèi)容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

Java實例域初始化方式

1.構(gòu)造器

public class Employee {
  private String name;
  private String gender;
  private int age;
  private double salary;

  public Employee() {
    this.salary = 1000.0;
  }

  public Employee(String name, String gender, int age, double salary) {
    this.name = name;
    this.gender = gender;
    this.age = age;
    this.salary = salary;
  }
}

2.域聲明

public class Employee {
  private String name;
  private String gender;
  private int age;
  private double salary = 1000.0;

  public Employee() {
  }
  public Employee(String name, String gender, int age, double salary) {
    this.name = name;
    this.gender = gender;
    this.age = age;
    this.salary = salary;
  }
}

3.初始化塊(initialization block)

public class Employee {
  private String name;
  private String gender;
  private int age;
  private double salary;
  private static String test;

  //靜態(tài)初始化塊:類第一次被加載時執(zhí)行
  static {
    System.out.println("類加載");
    test = "hello world!"
  }
  
  //初始化塊
  {
    name = "xiao";
    gender = "m";
    age = 20;
    salary = 1000.0;
    System.out.println("初始化");
  }

  @Override
  public String toString() {
    return "Employee{" +
        "name='" + name + '\'' +
        ", gender='" + gender + '\'' +
        ", age=" + age +
        ", salary=" + salary +
        '}';
  }
  public static void main(String[] args) {
    Employee employee = new Employee();
    System.out.println(employee.toString());
  }
}

初始化
Employee{name='xiao', gender='m', age=20, salary=1000.0}
Process finished with exit code 0

Java實例域初始化順序

調(diào)用構(gòu)造方法的具體處理步驟:

1. 如果類是第一次被使用,先執(zhí)行靜態(tài)初始化塊

2. 所有數(shù)據(jù)域被初始化為默認(rèn)值(0、false或null)

3. 按照在類聲明中出現(xiàn)的次序,依次執(zhí)行所有域初始化語句和初始化塊。

4. 如果構(gòu)造方法調(diào)用了其他構(gòu)造方法,先執(zhí)行其他方法。

5. 最后,執(zhí)行構(gòu)造方法。

看完這篇關(guān)于Java實例域初始化方式和順序的文章,如果覺得文章內(nèi)容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI