Java備忘筆記
  • Introduction
  • Java 特性
  • 如何開始
  • 編譯並執行 console
  • 編譯並執行 Eclipse
  • 作者介紹
  • Basic Object-Oriented
    • 類別、物件
    • 存取物件的欄位、方法
    • 初始化物件 Constructor
  • Basic Java Programming
    • 第一支Java程式
    • 變數
    • 資料型態
      • 基本資料型態
      • 參考資料型態
      • 基本與參考資料型態差異
      • 陣列
      • 字串
    • 運算子
      • 指定、算數、單元運算子
      • 關係、條件運算子
      • 三元、型態比對運算子
      • 位元運算子
    • 表達式、敘述、程式區塊
    • 流程控制
    • 靜態成員 static
      • 靜態變數
      • 靜態方法
    • 內部類別
    • 套件、載入
    • 存取修飾子
      • 修飾外部類別
    • 標準輸入 Scanner
  • Object Oriented Programming
    • 封裝
    • 繼承
    • 多型
    • 抽象
    • 介面
Powered by GitBook
On this page
  • 類別 class
  • 物件 object
  • 定義類別
  • 創造物件

Was this helpful?

  1. Basic Object-Oriented

類別、物件

定義好在Java上物件導向的基本名詞,以及類別與物件的關係。

類別 class

類別定義物件的屬性、方法,利用類別可以產生物件。

物件 object

物件有它所屬的屬性及方法,在記憶體佔有空間,物件導向的概念就是把真實世界抽象化為許多的物件,物件之間彼此會交互運作。

定義類別

Java是純物件導向的程式語言,而物件透過類別產生的,因此我們最一開始要先定義好我們的類別。

定義類別的方法:

class 類別名稱{
    // 定義屬性
    // 定義方法
}

這是最簡單的類別定義,我們試著把它想像成現實世界的情況:

class 人類{
    姓名、年齡、身高;
    吃飯()、睡覺();
}

在上面的範例中,人類這個類別有三個屬性:姓名、年齡、身高,以及兩個方法:吃飯、睡覺。

創造物件

有了定義好的類別後,就可以來創造物件,創造物件分成兩個部份:

  1. 宣告

  2. 初始化

類別名稱 物件名稱;              //宣告
物件名稱 = new 類別建構子();    //初始化

以上面定義好的人類類別來舉例:

人類 小木;
小木 = new 人類();

也可以寫成一行,這也是一般人常見到的用法:

人類 小木 = new 人類();

此時在記憶體中的配置如圖所示:

如果只有宣告物件,那只會在記憶體中配置一塊記憶體,叫做該物件的名稱。如上圖中左手邊的部份。

物件名稱透過 new 這個關鍵字,利用『建構子』進行初始化。會依照事先定義好的類別在記憶體中劃一塊空間,然後將該空間的記憶體地址回傳給物件名稱,此時物件名稱就與真正的類別定義好的欄位跟方法連結起來,就像上圖的紅色箭頭。

這樣就完成我們所預期的目標了:創造一個名叫小木的人類,具備有人類的所有屬性及方法。 這個動作也稱為物件的實體化(instantiated)。

一個實體(實例、instance)就是在記憶體中佔有空間的一個物件。

PreviousBasic Object-OrientedNext存取物件的欄位、方法

Last updated 4 years ago

Was this helpful?