類和對象

面向對象和麪向過程

1. 面向過程

  • 當須要實現一個功能的時候,每個具體的步驟都要親力親爲,詳細處理每個細節。

2. 面向對象

  • 當須要實現一個功能的時候,不關心具體的步驟,而是找一個已經具備該功能的人來幫忙作。
  • 特色:面向對象思想是一種更符合咱們思考習慣的思想,它能夠將複雜的事情簡單化,並將咱們以執行者變成了指揮者。面向對象的語言中,包含了三大基本特徵:封裝、繼承、多態

類和對象

  • 類 :是一組相關屬性和行爲的集合。能夠當作是一類事務的模板。使用事物屬性特徵和行爲來描述該類事物。
  • 屬性:就是該事物的狀態信息。
  • 行爲:就是該事物可以作什麼。

類與對象的關係

  1. 類是對一類事物的描述,是抽象的。
  2. 對象是一類事物的實例,是具體的。
  3. 類是對象的模板,對象是類的實體。

類的定義

事物與類的對比

  • 屬性:事物的狀態信息。
  • 行爲:事物可以作什麼。

java中用.class描述事物

  • 成員變量:對應事物的屬性。
  • 成員方法:對應事物的行爲。

注意事項

  1. 成員變量是直接定義在類當中的,在方法外邊。
  2. 成員方法不要寫static關鍵字。

一般狀況下,一個類並不能直接使用,須要根據類建立一個對象,才能使用。

  1. 尋包:也就是指出須要使用的類,在什麼位置。對於和當前類屬於同一個包的狀況,能夠省略導包語句不寫。
    import 包名稱.類名稱;
  2. 建立:格式
    類名稱 對象名 = new 類名稱();
    Student stu = new Student();
  3. 使用:分兩種狀況java

    • 使用成員變量 對象名.成員變量名
    • 使用成員方法 對象名.成員方法名(參數)

注意事項

  • 若是成員變量沒有進行賦值,那麼將會有一個默認值,規則和數組同樣。當一個對象做爲參數,傳遞到方法當中時,實際上傳遞去的是對象的地址值。當使用一個對象類型做爲方法的返回值時,返回值其實就是對象的地址值。

局部變量和成員變量

  1. 定義的位置不同(重點)數組

    • 局部變量:在方法的內部
    • 成員變量:在方法的外部,直接寫類當中。
  2. 做用範圍不同(重點)對象

    • 局部變量:只有方法當中纔可使用,出了方法就不能再用了。
    • 成員變量:整個類所有能夠通用。
  3. 默認值不同(重點)繼承

    • 局部變量:沒有默認值,若是想使用,必須手動進行賦值。
    • 成員變量:若是沒有賦值,默認會有默認值,規則和數組同樣。
    • 方法的參數是局部變量。參數在方法調用時必然會被賦值的。
  4. 內存的位置不同生命週期

    • 局部變量:位於棧內存。
    • 成員變量:位於堆內存。
  5. 生命週期不同事務

    • 局部變量:隨着方法進棧而誕生,隨着方法出棧而消失。
    • 成員變量:隨着對象建立而誕生,隨着對象被垃圾回收而消失。
相關文章
相關標籤/搜索