【C#之物件導向總結】

我是太陽啦啦啦發表於2016-02-01

前言:

物件導向,是否曾經你也和她相識過,我第一次聽到她,是在學習VB 的時候,在這時,也接觸了程式導向。現在在學習C#,又一次和她相遇了,今天,我們一起來總結一下,關於物件導向,知識的學習是一個不斷重複的過程,學習從來不是一次性的事情,在過程中學習。讓我帶著您一起走進物件導向的世界吧!不管是剛開始或者是再次學習,相信都會有所收穫!

核心:

  (一)概念之回顧

1.通常理解:

面向物件,英文:Object Oriented簡稱:OO是軟體開發方法物件導向是一種對現實世界理解和抽象的方法,是計算機程式設計技術發展到一定階段後的產物。物件導向,必須具有的三大特點:封裝、繼承、多型

2.學習中瞭解:

物件導向=物件+類+繼承+通訊 

這是軟體工程學家Codd和Yourdon提出的,他們認為:如果一個軟體系統採用這些概念來建立模型並予以實現,那麼他就是物件導向的!
物件、類、繼承在下面的內容中詳細講解,那麼這個通訊是什麼呢?我們們來看一下,通訊則是指物件與物件之間的訊息傳遞。
這是在學習過程中逐漸認識到的,可以根據這個四個組成來區分是不是物件導向。

(二)基本概念之溫習

1.物件(Object): 

物件是看的見,摸得著的實物,如:你的電腦、你的手機以及自己都是一個物件。

2.類(Class):

類是模子,確定物件將會擁有的特徵(屬性)和行為(方法)是物件的型別,官方語言為是一組具有相同資料結構和相同操作的物件的集合

3.區別

(三)三大特點再回顧

1.簡單瞭解之導圖

2.細細瞭解之分說

A.封裝

a.定義
將客觀事物抽象成類,每個類對自身的資料和方法實行
  b.封裝方法
·第一種方法,我們使用傳統的存、取方法
    ·第二種方法我們用屬性property
 c.封裝的意義
在於保護或者防止程式碼(資料)被我們無意中破壞

B.繼承

a.定義
是指可以讓某個型別的物件獲得另一個型別的物件的屬性的方法
b.包含
父類(基類)
子類(派生類)
c.規則
·繼承是可傳遞的
·派生類應當是對基類的擴充套件
·派生類覆蓋繼承的成員同名的成員,使用自己定義的新成員
·類可以定義虛方法、虛屬性以及虛索引指示器,派生類可以過載
·派生類只能從一個類繼承,但可以通過介面實現多繼承

C.多型

a.定義
是指一個類例項的相同方法在不同情形有不同表現形式
b.建立多型的方式

————用父類實現多型

————用抽象類實現多型

————用介面實現多型

c.版本控制

————需要保留基類方法使用new關鍵字

————需要重寫方法時使用override關鍵字

(四)設計原則之再識

優點

· 單一職責原則:提高內聚、降低耦合

·開閉原則:提高靈活性、可重用性、可維護性

·里氏替換原則:對開閉原則的擴充套件,對如何良好繼承提出了要求

·介面分離原則:使用多個專門的介面比使用單一的介面要好

·依賴倒置原則:里氏替換原則的補充

總結:

物件導向的思想,還需要我們不斷的學習,其中的繼承、封裝、多型三大特點,需要我們在運用的時候加以掌
握,對此只是比較巨集觀的瞭解,具體的細節內容豐富,需要我們多多總結和探索!

相關文章