站長資訊網
        最全最豐富的資訊網站

        Python之面向對象解析

        一、面向對象的概念

        面向對象oop(onject oriented programming),與之對應的還有面向過程,向C語言就是面向過程的

        理解過程和函數?

        過程:是早期的一個編程概念,過程類似于函數,只能執行,但是沒有返回值

        函數:不僅能執行,還可以返回結果(return)

        二、深刻理解什么時面向對象和面向過程

        面向過程:—-側重于怎么做?

        把完成某個需求的所有步驟從頭到尾逐步實現 根據開發要求,將某些功能獨立的代碼封裝成一個又一個函數 最后完成的代碼,就會死順序的調用不同的函數

        特點:

        注重步驟與過程,不注重職責分工 如果需求復雜,代碼會變得很復雜 開發復雜項目,沒有固定的套路,開發難度很大

        面向對象:—側重于誰來做?

        相比較函數,面向對象是更大的封裝,根據職責在一個對象中封裝多個方法

        在完成某個需求之前,首先確定職責—要做的事情(方法) 根據職責確定不同的對象,在對象內部封裝不同的方法(或是多個方法) 最后完成代碼,就是順序的讓不同對象調用不同的方法

        特點:

        注重對象和職責,不同的對象承擔不同的職責 更加適合復雜的需求變化,是專門應對復雜項目的開發提供的固定套路 需要在面向過程的基礎上,再學習一些面向對象的語法

        面向對象編程有Python 、JAVA 、C++

        三、類與對象

        在程序開發中,先有類,再有對象

        類:是對一群具有相同特征或行為的事物的一個統稱,不能直接使用(比如:在飛機制造前先設計的哪個圖紙,圖紙就是一個類,可以用著一個圖紙制作出好多飛機,但是,圖紙是不能飛上天的)特征被稱為屬性,行為被稱為方法

        對象:有類創建出來的一個具體存在的,可以直接使用的(飛機可以飛上天)

        類的設計:

        在使用面相對象開發前,應該首先分析需求,確定一下,程序中需要包含哪些類!

        Python之面向對象解析

        1.類名:這類事物的名字i,滿足大駝峰命名法

        大駝峰命名法:每個單詞的首字母大寫,單詞與單詞之間沒有下劃線

        2.屬性:這個類創建出來的對象有什么樣的特征

        2方法:這個類創建出來的對象有什么樣的行為

        四、實例

        案例【1】:

          小明今年18歲,身高1.75,每天早上要跑步,會去吃東西  小美今年17歲,身高1.65 小美不跑步,小美喜歡吃東西
              Person()    #類名      name        #屬性      age      height      run()       #方法      eat()  

        案例【2】:

          一只黃顏色的狗狗叫大黃  看見生人旺旺叫  看見家人搖尾巴
              Dog()       #類名      name        #屬性      color      shout()     #方法      shark()  

        五、定義之包含方法的類

          class 類名:      def 方法1(self):          pass      def 方法2(self):          pass

        創建對象:對象變量=類名

        %x:打印格式為十六進制數

        %d:打印格式為十進制數

        實例:需求:小豬愛吃飯,小豬愛睡覺

          class pig:      def eat(self):          print '小豬愛吃飯'      def sleep(self):          print '小豬愛睡覺'  Pig = pig()  Pig.eat()  Pig.sleep()  addr= id(Pig)  print addr  print '%x' %addr  print '%d'%addr

        Python之面向對象解析

        六、用相同的類可以創建不同的對象

        案例【1】

          class pig:      def eat(self):          print '小豬愛吃飯'      def sleep(self):          print '小豬愛睡覺'  Pig = pig()  Pig.eat()  Pig.sleep()  addr= id(Pig)  print addr  print '%x' %addr  print '%d'%addr  #用相同的類可以創建不同的對象  lazy_pig=Pig  lazy_pig.eat()  lazy_pig.sleep()  print lazy_pig  lazy_pig2=lazy_pig  print lazy_pig2

        Python之面向對象解析

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产综合精品蜜芽| 欧美 日韩 精品 另类视频| 国产成人精品免费大全| 热RE99久久精品国产66热| 四虎精品影院永久在线播放| 午夜精品久久久久久毛片| 国产精品无码素人福利不卡| 国产精品久久久久影院色| 日产精品99久久久久久| 香港三级精品三级在线专区| 国产精品狼人久久久久影院| 好吊妞视频精品| 精品久久久久久无码中文字幕一区| 亚洲国产精品ⅴa在线观看| 国产精品污WWW一区二区三区| 久久这里只有精品久久| 国产成人精品无码片区在线观看| 无码囯产精品一区二区免费| 日韩欧美亚洲国产精品字幕久久久| 国产久爱免费精品视频| 91麻精品国产91久久久久| 91麻豆精品国产| 精品调教CHINESEGAY| 久久香蕉国产线看观看精品yw| 合区精品久久久中文字幕一区 | 无夜精品久久久久久| 国产精品偷伦视频免费观看了| 成人一区二区三区精品| 99精品久久久久久久婷婷| 99熟女精品视频一区二区三区 | 国产精品青草久久久久福利99 | 久久精品国产一区| 国产精品电影网| 精品亚洲一区二区| 欧美精品免费在线| 亚洲av永久无码精品网站| 国内精品一级毛片免费看| 久久精品亚洲日本波多野结衣| 日韩精品无码AV成人观看| 日本内射精品一区二区视频| 久久久国产精品亚洲一区|