類別(class):類似物件的設計圖、範本,用來定義物件形成時的樣子,本身沒有實體
物件(object):由屬性(attributes)和方法(method)構成,有實體概念的東西,例如在現實生活中人、鳥、車子都可以稱為物件
以銀行帳戶為例
每個銀行帳號都有存款,並且可以存錢、領錢和查詢
帳號是物件
存款是屬性
存錢、領錢和查詢是方法
符合class規劃的物件、屬性作出來的就是物件
儘管屬性和方法都一樣但不同帳號就是不同物件
abstraction(抽象)
抽象類別可以實作屬性,亦可先宣告屬性再讓子類來實作或覆寫。
encapsulation(封裝)
可以將程式碼包裝,讓其他使用者可以利用他,但不能對其做更動,確保安全。
inheritance(繼承)
讓子類別可以使用父類別允許的方法,讓程式撰寫更有效率、使程式更容易做修改
polymorphism(多型)
不同資料類型的實體提供統一的介面。