物件(Object)和類別(Class)是物件導向程式設計中的兩個核心概念,它們之間的關係密切且基礎性。
類別 是一種模板或藍圖,用於定義創建物件的數據結構和行為。類別規定了物件的屬性(通常是變數)和方法(類中定義的函數),這些屬性和方法共同定義了該類別的物件將如何儲存資訊和執行操作。
物件 是根據類別模板創建的一個實例。每個物件都有自己的屬性值(即狀態),這些屬性是獨立於其他物件的。物件可以執行類別中定義的方法,從而表現出行為。
類別和物件之間的關係可以這樣理解:
類別就像是建築圖紙,而物件就像是根據這些圖紙建造的房子。每個房子都是圖紙的具體實現,但可以在顏色、裝飾等細節上有所不同。
類別只有一個(在程式碼中定義),但可以根據這個類別創建多個物件。這些物件互不相同,每個物件都有其獨立的屬性集。
類別定義了屬性和行為,而物件封裝了狀態(屬性的值)和行為(方法的執行)。
例如,在一個遊戲程式中,可以有一個名為 Monster 的類別,它定義了怪物的屬性(如生命值、攻擊力)和方法(如攻擊、移動)。這個類別可以用來創建多個怪物物件,每個怪物物件都有自己的生命值和攻擊力,並且能夠執行攻擊和移動的操作。雖然它們來自同一個類別,但每個物件的狀態都是獨立的。