iT邦幫忙

2024 iThome 鐵人賽

DAY 17
0
佛心分享-IT 人自學之術

Python學習馬拉松:30天挑戰系列 第 17

Day17. 物件導向Object Oriented Python

  • 分享至 

  • xImage
  •  
  • 物件導向 (Object Oriented):
    -程式由許多合作的物件組成,每個物件都有自己的屬性 (attributes) 和行為 (behaviors)。
    -每個物件都是一個小島:
    ◆ 強調了物件的獨立性。每個物件都有自己的狀態和行為,不需要知道其他物件的內部細節。
    ◆ 物件之間透過訊息傳遞來互動,就像島嶼之間的船隻。
    -物件共同合作:
    ◆ 程式中的不同物件會互相合作,共同完成任務。
    ◆ 一個物件可以呼叫另一個物件的方法來利用它的功能

  • 物件(Object):
    -物件包含了執行特定任務所需的程式碼(方法)和相關的數據(屬性)。
    -物件導向的關鍵概念之一就是將一個複雜的問題拆分成許多較小的、易於管理的物件。
    -每個物件都有自己的界線,我們只需要知道如何使用這個物件,而不需要了解它的內部細節。
    -許多程式語言中都有內建的物件,例如字串物件、整數物件、字典物件等等。

  • 定義:
    -類別 (Class): 可以想像成一個藍圖或模板。它定義了一個物件的結構,包括這個物件有哪些屬性和方法。
    -方法 (Method) 或訊息 (Message): 是類別定義的一個行為或功能。當你對一個物件發送一個訊息時,就相當於要求這個物件執行某個特定的動作。
    -欄位 (Field) 或屬性 (Attribute): 是類別中用來儲存數據的變數。它描述了物件的狀態或特徵。
    -物件 (Object) 或實例 (Instance): 是根據類別創建出來的具體實體。每一個物件都有自己獨特的屬性值,但它們都遵循相同的類別定義。

  • 物件的生命週期 (Object Lifecycle):
    -物件被創建、使用,然後被丟棄。
    -我們有特殊的程式碼塊(方法),它們在特定時機被呼叫:
    ◆ 創建時: 稱為建構子(constructor),用來初始化物件。
    ◆ 銷毀時: 稱為解構子(destructor),用來清理物件佔用的資源。
    -建構子被頻繁使用,而解構子則較少使用。

  • 建構子(constructor):
    -主要目的是在創建物件時,為物件的實例變數設定初始值。
    -這是一個特殊的方法,當創建一個新的物件時,這個方法會自動被呼叫。它的名字通常是 init。(當創建一個物件時,自動執行的程式碼。)

  • 繼承 (Inheritance):
    -當我們建立一個新的類別(class)時,可以重複利用現有的類別,並繼承其所有功能,然後再添加我們自己的部分來建立新的類別。(基於已有的類別,創建新的類別。)
    -這是另一種儲存和重複利用的方式。
    -一次編寫,多次使用。
    -新的類別(子類)擁有舊類別(父類)的所有功能,並且可能還具有額外的功能。
    ◆ 子類 (Subclass):也稱為子類別,是從另一個類別(父類別)派生出來的類別。
    ◆ 父類別 (Parent class):被子類繼承的類別。


上一篇
Day16. JSON 與 REST 架構(JSON and the REST Architecture)
系列文
Python學習馬拉松:30天挑戰17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言