(13)C# 基礎—— 面向對象

.NET C# Web開發學習之路(13)—— 面向對象

面向對象編程(OOP)是開發應用程序的一種新方法、新思想。過去面向過程編程常常回到石所有代碼都包含在幾個模塊中,是程序難以閱讀和維護,對軟件做一些修改時常常牽一動百,是以後的開發和維護難以爲繼。而OOP技術使用許多代碼模塊,沒個模塊都只提供特定的功能,它們是彼此獨立的,這樣就提高了代碼的重用率,更加有利於軟件的開發、維護和升級。

什麼是對象?

對象,萬物皆對象。生活中常說的“東西”就是程序裏面所指的對象。比如:汽車、電腦、手機等都可以叫做對象。在OOP中,對象就是變量和相關的方法的集合。其中變量表明對象的屬性,方法表明對象所具有的行爲。一個對象的變量構成了這個對象的核心,包圍在它外面的方法便使這個對象和其他對象分離開來。例如:我們可以把汽車抽象爲一個對象,用變量來表示它當前的狀態,如速度、油量、型號、所處的位置等,它的行爲則爲上面提到的加速、剎車、換擋等。操作汽車時,不用去考慮汽車內部各個零件如何運作的細節,而只需根據砌成可能的行爲適用相應的方法即可。

實際上,面向對象的程序設計實現對象的封裝,是我們不必關心對象那個的行爲是如何實現的這樣一些細節。通過對對象的封裝,實現了模塊化和信息隱藏。有利於程序的可移植性和安全性,同時也利於複雜對象的管理。

對象間的關係

依賴、繼承和泛化、關聯

依賴:當對象B的功能實現,依賴於對象A,稱對象B依賴對象A. 如:A是B的方法的參數。
繼承和泛化:當對象A是對象B的特例時,就說對象A繼承了對象B。
關聯 :類與類之間的連接.當對象A的引用是對象B的屬性或成員時,稱對象A和對象B之間是關聯關係。(強整體與部分關係:組合,弱整體與部分關係:聚合)

什麼是類?

在研究對象時主要考慮對象的屬性和行爲,有些不用的對象會呈現相同或相似的屬性或行爲,如轎車、卡車、麪包車。通常將屬性及行爲相同或者相似的對象歸爲一類。類可以看成是對象的抽象,代表了此類對象所具有的的共同屬性和行爲。典型的類是“人類”,表明人的共同性質。比如我們可以定義一個汽車類來描述所有汽車的共性。通過類定義,可以實現代碼的重用。我們不用去描述每一個對象(如某輛汽車),二是通過創建類(汽車類)的一個實例來創建該類的一個對象,這樣簡化了軟件的設計。

類是對一組具有相同特徵的對象的抽象描述,所有這些對象都是這個類的實例。在C#中,類是一種數據類型,而對象時該類型的變量,變量名即是某個具體對象的標示名。

類與對象的區別

  • 類是一個抽象的概念,他不存在於現實中的時間/控件,類只是爲所有的對象定義了抽象的屬性與行爲。
  • 對象是類的一個具體。是一個真實存在的東西,
  • 類是一個靜態的概念,類本身不攜帶任何數據。當沒有爲類創建任何對象時,類本身不存在於內存控件中。
  • 對象是一個動態的概念,每一個對象都存在着有別於其他對象的屬於自己的獨特的屬性和行爲。對象的屬相可以隨着它自己的行爲而發生改變。

類和對象的關係

對象:用來描述客觀事物的一個實體,由一組屬性和方法構成。
類:具有相同屬性和行爲的一類物質集合

類:對象的抽象
對象:類的實例化

創建並使用對象

    類名 對象名 = new 類名();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章