08-JAVA封裝

JAVA封裝

JAVA封裝思維導圖

面向對象有三大特徵:

1、封裝

2、繼承

3、多態

封裝:

定義:

  • 隱藏類的內部信息,不允許外部程序直接訪問,而是通過方法進行操作

封裝操作步驟:

  • 1、將屬性設置爲private,只能在本類中使用,如private int age;

  • 2、編寫對應屬性的賦值方法,如setAge()和getAge()

    • 賦值方法:

      • public void setAge(int age){

      if (age>=0&&age<=100){

        this.age=age;
      

      }else {

        this.age=18;
      

      }

    }

    • 取值方法:

      • public int getAge(){

      return age;

    }

this關鍵字:

this關鍵字訪問本類中的實例變量(對象變量):

  • this表示當前這個對象,也就是說當前誰調用這個方法,則這個對象就是誰

  • this關鍵字可以訪問本類中的屬性:

    • 當局部變量和成員變量沒有同名時,則編寫屬性名等價於this.屬性名,如id等價於this.id
    • 當局部變量和成員變量同名時,並且訪問成員變量則需要使用this

this關鍵字訪問本類中的實例方法(對象方法):

  • 方法名稱([參數列表])

    • 等價於this.方法名稱([參數列表])

this關鍵字訪問本來中其他構造方法:

  • this();

  • this([參數列表]);

  • 注意:

    • 當時使用this訪問本類中構造方法時,則只能編寫在構造方法中,並且是一條語句,其他不可以,譯錯
    • 不可以自己調自己(遞歸調用)

static關鍵字:

爲什麼使用static關鍵字修飾屬性:

  • 方法區(也叫共享區=》節省空間)

static關鍵字修飾屬性(靜態)

  • 稱爲靜態屬性,也叫類的變量,沒有static稱爲非靜態屬性,也叫做實例變量

  • 在方法區(共享區)中存儲,並且所有對象都可以訪問

  • 與類同生死,也就是說類在,static修飾的屬性就在

  • 使用:

    • 類名.屬性名稱
    • 引用名稱.屬性名稱(new後)
  • 類優先於對象,也就是說類的生命週期比較長

static關鍵字修飾方法:

  • 稱爲靜態方法,也叫做類的方法

  • 與類同生死,也就說類存在時,static修飾的方法就存在

  • 使用:

    • 類名.方法([參數列表]);
    • 引用名稱.方法名稱([參數列表]);(new後)
  • 靜態方法中只能訪問靜態屬性、靜態方法

  • 當方法體中只訪問靜態屬性、靜態方法時,可以編寫爲靜態方法,但如果有實列屬性、實列方法則只能編寫爲非靜態

static修飾靜態代碼塊:

  • (構造方法:完成對實列變量的賦值)

  • (靜態代碼塊:主要對靜態屬性賦值)

  • 靜態代碼塊在類第一次被載入時執行

  • static String address;

    static {

    address=“北京”;

}

- address必須存在

引用數據類型作爲參數:

當引用數據類型作爲參數進行傳遞時,傳遞的是地址,也就是說公用同一個地址,當一個方法中地址所對應的屬性值發生改變,則另一個地址中所對應的值也發生改變

引用數據類型進行賦值:

多個引用名稱指向同一個對象,當一個引用名稱改變對象中的值,則另一個引用名稱在訪問屬性的值也會發生改變

基本數據類型作爲參數傳遞:

當基本數據類型作爲參數傳遞時,傳遞的是真正的值,當一個方法中的值發生改變時,對另一個方法的值沒有任何改變,因爲兩個方法中的變量是各自獨立的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章