物件導向前言

來源:互聯網
上載者:User

標籤:邏輯   前言   抽象   bsp   結構   物件導向   子類   設計   允許   

編程範式

編程是 程式 員 用特定的文法+資料結構+演算法 組成的代碼來告訴電腦如何執行任務的過程 。

實現一個任務的方式有很多種不同的方式, 對這些不同的編程方式的特點進行歸納總結得出來的編程方式類別,即為編程範式。

 

面向過程編程

核心是過程

過程指的是解決問題的步驟,設計一條流水線,機械式的思維方式。(大過程逐步細化)

優點:把複雜的問題流程化,進而簡單化。

缺點:可擴充性差

 

物件導向編程

核心是對象

一切事物皆對象。  對象就是特徵與技能的結合體

優點:可擴充性強

   使程式更加容易擴充和易更改,使開發效率變的更高

   基於物件導向的程式可以使它人更加容易理解你的代碼邏輯,從而使團隊開發變得更從容。

缺點:編程複雜高

使用者情境:使用者需求經常變化,互連網應用,企業,企業內部應用

如果只是寫一些簡單的指令碼,去做一些一次性任務,用面向過程的方式是極好的,但如果你要處理的任務是複雜的,且需要不斷迭代和維護 的, 那還是用物件導向最方便了。

 

物件導向3大特性

Encapsulation 封裝

在類中對資料的賦值、內部調用對外部使用者是透明的,這使類變成了一個膠囊或容器,裡麵包含著類的資料和方法

Inheritance 繼承

一個類可以派生出子類,在這個父類裡定義的屬性、方法自動被子類繼承

Polymorphism 多態

多態是物件導向的重要特性,簡單點說:“一個介面,多種實現”,指一個基類中派生出了不同的子類,且每個子類在繼承了同樣的方法名的同時又對父類的方法做了不同的實現,這就是同一種事物表現出的多種形態。

編程其實就是一個將具體世界進行抽象化的過程,多態就是抽象化的一種體現,把一系列具體事物的共同點抽象出來, 再通過這個抽象的事物, 與不同的具體事物進行對話。

對不同類的對象發出相同的訊息將會有不同的行為。比如,你的老闆讓所有員工在九點鐘開始工作, 他只要在九點鐘的時候說:“開始工作”即可,而不需要對銷售人員說:“開始銷售工作”,對技術人員說:“開始技術工作”, 因為“員工”是一個抽象的事物, 只要是員工就可以開始工作,他知道這一點就行了。至於每個員工,當然會各司其職,做各自的工作。

多態允許將子類的對象當作父類的對象使用,某父類型的引用指向其子類型的對象,調用的方法是該子類型的方法。這裡引用和調用方法的代碼編譯前就已經決定了,而引用所指向的對象可以在運行期間動態綁定

物件導向前言

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.