日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

07-Python之面向对象编程(定义)

發布時間:2024/4/15 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 07-Python之面向对象编程(定义) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

# 面向對象一些基本理解

- 面向對象編程(Object Oriented Programming, OOP),是一種程序設計思想。

  - 主要針對大型軟件設計而提出,使軟件設計更加靈活。

  - 支持代碼復用和設計復用,使代碼由更好的可讀性和可擴展性。

  - OO: 面向對象
  - OOA:面向對象的分析
  - OOD:面向對象的設計
  - OOI:面向對象的實現
  - OOP:面向對象的編程
  - 面向對象的實現過程:OOA->OOD->OOI

- 類和對象的概念:?
  - 對象:具體的事物,單個個體,類中的一個實例
    - 作為程序的基本單元,一個對象包含了數據和操作數據的函數。
  - 類:抽象名詞,代表一個集合,共性的事物
    - 對相同類型的對象進行分類、抽象后,得出共同的特征而形成了類。
- 類跟對象的關系:
  - 一個是抽象,代表的是一大類事物
  - 一個具象,代表一類事物的某一個個體

# 類的定義

- 基本格式:

  class ClassName(object):

    屬性...

    方法...
    ......

- 定義一個類:

  - 必須用class關鍵字
  - 類由屬性和方法構成,其他不允許出現
  - 成員屬性定義可以直接使用變量賦值,如果沒有值,使用None
  - 類的注釋,方便理解類的作用,包括屬性方法。

- 類的命名規則推薦:

  - 遵守變量命名的規范
  - 大駝峰(有一個或者多個單詞構成,每個單詞首字母大寫,單詞跟單詞之間相連)
  - 盡量避開跟系統命名相似的命名
- (object)表示類是從哪個類繼承下來的,默認是object類.(可省略)

?

- 類當中基本的內容:

  - 屬性:

    - 概念: 一個對象的特征(變量)
    - 分類:
      - 1.實例屬性:
        - 一般在構造函數__init__()中定義,定義和使用必須以self作為前綴
        - 實例屬性屬于實例(對象),只能通過對象名訪問。
      - 2.類屬性:
        - 是指類中所有方法之外定義的數據成員,可以通過類名訪問,也可以通過對象訪問
        - 分類:公有屬性、保護屬性、私有屬性

  - 方法:

    - 概念:一個對象的行為,稱為方法(函數)
    - 分類:
      - 1.實例方法
        - 公有方法
          - 通過對象名調用
        - 私有方法
          - 不能通過對象名直接調用,
          - 只能在屬于對象的方法中通過self調用或者在外部通過其他特殊方式調用
        - 注意:

          - 形參列表第一個參數都要定義且最好命名為self
          - 默認第一個參數代表的是實例化的類對象的引用
          - 需要實列化對象才能使用,使用過程中可能需要截至對象的其他對象的方法完成

        - 調用方法:
          - 標準調用(推薦使用)、類調用、間接調用

      - 2.靜態方法

        - 使用staticmethod()內置函數。
        - 默認第一個參數需要接收到一個類
        - 調用:通過類名或對象名
          - 不需要實例化,通過類直接訪問,多個實例共享此靜態方法
          - 不能直接訪問屬于對象的成員,只能訪問屬于類的成員
      - 3.類方法
        - 一般將cls作為類方法的第一個參數名稱,調用類方法時不需要為該參數傳遞值
        - 可以通過類或者它的實例來調用

  - 關于self:

    - 類的所有實例方法都必須至少有一個名為self的參數,并且必須是方法的第一個形參。
    - self 在對象的方法中表示當前對象本身。
    - 如果通過對象調用第一個方法,那么該對象會自動傳入到當前方法的第一個參數中
      - self 不是關鍵字
      - 只是一個普通的參數
    - 理論上可以用任何一個普通變量代替
    - 方法中有self 形參的方法稱為非綁定的方法,
      - 可以通過對象訪問
      - 沒有self的是綁定類方法,只能通過類訪問
    - 使用類訪問綁定類的方法時,如果類方法總中需要訪問當前類的成員,可以通過__class__成員來訪問

  * 案例1.創建類

# 1.簡單的定義(經典類) class Person: # 括號可以省略pass # pass就是一個占位符,什么也不是 ######################################## # 2.創建包含屬性的類 class Person:# 1.類屬性# 1.1公有屬性name = "xiaohei"# 1.2保護的屬性_sex = "boy" # 以一個"_"開頭則表示是被保護的屬性# 1.3私有屬性__age = 3 # 以兩下劃線"__"開頭的則表示是私有屬性# 2.實例屬性def __init__(self, c): # self形參不能缺少self.master = "humance"self.aother = cself.other = '添加屬性'print(c) ######################################## # 3.創建包含方法的類 class Person:# 類屬性name = "xiaobai" # 類方法# 1.共有方法(實例方法)def eat(self, f):print(self, f)# 2.私有方法def __siyoufangfa(self):print("這是一個私有方法", self)# 3.類方法 @classmethoddef leifangfa(cls):print("這是一個類方法",cls)# 4.靜態方法 @staticmethoddef jingtaifangfa():print("這是一個靜態方法")

?

轉載于:https://www.cnblogs.com/cmn-note/p/11234340.html

總結

以上是生活随笔為你收集整理的07-Python之面向对象编程(定义)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。