c# 中的封裝、繼承、多態詳解

來源:互聯網
上載者:User

標籤:成員   編寫   狀態   隱藏   實現   通過   命名衝突   安全   父類   

物件導向有封裝、繼承、多態這三個特性,物件導向編程按照現實世界的特點來管理複雜的事物,把它們抽象為對象,具有自己的狀態和行為,通過對訊息的反應來完成任務。這種編程方法提供了非常強大的多樣性,大大增加了代碼的重用機會,增加了程式開發的速度,將具備獨立性特製的程式碼封裝起來,修改部分程式碼時不至於會影響到程式的其他部分。

1.封裝

每個對象都包含它進行操作所需要的所有資訊,封裝只公開代碼單元的對外介面,而隱藏其具體實現,盡量不對外公開代碼。使用封裝有很多好處,從設計角度來講,封裝可以對外屏蔽一些重要的資訊,比如使用電腦的人只要知道怎麼使用電腦就可以,不用知道這些功能具體是怎麼實現的;從安全性考慮,封裝使對代碼的修改更加安全和容易,封裝明確的指出了哪些屬性和方法是外部可以訪問的,這樣當需要調整這個類的代碼時,只要保證公有屬性不變,公有方法的參數和傳回值類型不變,那麼就可以盡情的修改這個類,而不會影響到程式的其他部分;封裝還避免了命名衝突的問題,封裝有隔離作用,不同的類中可以有相同名稱的方法和屬性,但不會混淆,也可以減少耦合。

2.繼承

繼承可以使用現有類的所有功能,並在無須重新編寫原來的類的情況下,對這些功能進行擴充。使用繼承而產生的類被稱為衍生類別或子類,而被繼承的類則稱為基類或超類或父類。繼承表示一個類型派生於一個基底類型,它擁有該基底類型的所有成員欄位和函數,其子類是對父類的擴充;介面繼承是表示一個類型只繼承了函數的簽名,沒有繼承任何實現代碼。繼承劃分了類的層次性,也可以說繼承是對類的分組,父類代表的是抽象的類,更常用的類,而子類代表的是更為具體,更為細化的類;繼承是實現代碼重用、擴充的重要手段。所謂抽象的類是指與具體的事項相聯絡,但只是表達整體而不是具體概念的類,比如說形狀包含正方形、長方形、圓等,這時候形狀是一個抽象的概念,相當於一個父類,而正方形、長方形、圓是具體的形狀,相當於是子類。

3.多態

多態是指程式中同名的不同方法共存的情況,主要通過子類對父類方法的覆蓋來實現多態。這樣,不同類的對象可以用同名的方法完成特定的功能,但具體的實現方法卻可以不同。比如說形狀包含正方形、長方形、圓等,每個形狀都有面積和周長,但是不同的形狀計算面積和周長的方法都不同。

c# 中的封裝、繼承、多態詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.