1. 程式人生 > >16 初識面向物件

16 初識面向物件

三十五.初識面向物件

  一 .面向物件和麵向過程比較

    ①面向過程:一切以事物的發展流程為核心

           優點:負責的問題流程化,編寫相對簡單

         缺點:可擴充套件性差

    ②面向物件:一切以物件為中心. 一切皆為物件.

          具體的某一個事務就是物件

         優點:可擴充套件性強

         缺點:程式設計的複雜度高於面向過程

  二.類和物件

    ①類:就是圖紙,建立物件的第一步

        物件:通過類造出來的具體事物,

    ②基本格式

    class  類名:            #建立類    類名用駝峰格式

      def __init__(self,引數):         # self當前類的物件,引數一般作為屬性

        self.屬性 = 值

        self.屬性 = 值  

      def 方法(self , 引數)                   #即函式

        方法體(函式體,return)

    變數 = 類名()       #建立物件

    變數.屬性           #訪問物件的屬性資訊

    變數.方法()      #訪問類中的方法

 

   三.3大特徵     ( 封裝, 繼承, 多型.)

  ①封裝   1.對屬性的封裝  2.對方法和功能的封裝 3.模組和包

  ②繼承 : ⼦類可以⾃動擁有⽗類中除了私有屬性外的其他所有內容.

          對父類進行擴充套件

      當出現xxx是一種yyy型別的東西. 可以使用繼承關係

      父類的物件不能執行子類中的功能

      類中的方法的查詢順序. 先找自己, 然後再找父類

    1.基本格式

 

    2.支援多繼承

 

  ③多型    同一個物件,多種形態

        (鴨子模型, 只要會嘎嘎叫就是好鴨子,有超強的可擴充套件性)