Beginning C# Objects 读书笔记(一)
總是在看完了一本書之后才會想起要記下些些東西,昨晚總算是把這本書看了個第二遍了,相比于第一遍,當然是學了不少的東西.
第一部分,對象入門
作者先給我們介紹了一些C#的優勢.
C#是整合應用開發框架的一部分.被集成在微軟的.NET Framework中..NETFrameWork是全新的革命性應用開發和運行環境管理平臺.其核心要素之一就是公共語言運行時 common language runtime,CLR ,它負責管理C#程序的運行環境,裝載和運行C#程序,并為C#程序提供支持服務.
通過公共語言規范common language specification,CLS,提供了不同語言之間的協同工作能力.定義了所有.NET語言都必須遵守的公共類型集和操作,讓開發者能夠把C#代碼和使用其它語言編寫的代碼無縫集成到一起.對于使用規范的微軟技術的機構,C#能很容易與其它微軟組件集成.
.NET Farmework 還包含一個大型的庫集合.集FCL,提供了在windows平臺上開發應用程序所需要的幾乎所有功能性元素.
C#語言是徹底的面向對象語言
C#中的一切都是對象
C#提供免費的編譯器
好了,接下來是C#的一些基礎知識
命名空間是一系列預定義C#編程元素的集合,
C#是一種強類型的編程語言,聲明變量時必須同時聲明其類型.
Camel命名法,首字母小寫,后續的每個詞首字母大寫
在C#kh,變量被聲明時并不同時被自動賦予初始值,在訪問變量值前,必須明確地為其賦值,注意,這里跟類中的字段的初始化有點不一樣.
Main方法的名稱首字母必須大寫.
把較低精度的值賦給具有較高精度的變量,稱會寬化轉換,會自動進行.
注意在C#中 Float y = 3.5 是不能通過編譯的,因為3.5被看成是Double型.可以有以下幾種方法來解決:
float y= (float ) 3.5;
float y = 3.5F;
switch 可以用 一個整數或者是string來用于case的比較.
對象:所謂對象,就是一種將狀態(數據)和行為(操作)合成到一起的軟件構造,是用來描述真實世界的一個(物理或概念性的)對象
抽象模型中的類描述了一組相似對象的共同特性.
Pascal命名法:每個單詞第一個字母用大寫
類是對象的模版
方法體中的邏輯定義了抽象模型的業務邏輯,業務邏輯也被稱為業務規則
較好的編程習慣是在一個方法體中僅包含一個return語句,使用一個本地變量獲取最后的結果.(其實這個我并不怎么同意,有時候在確認可以結果方法的時候,就應該以上跳出來,這樣才不會在后面的邏輯的繼續運行而導致出錯)
調用對象X的方法,就對向對象X發送一條消息
方法頭的信息最完整:void SwitchMajor(string newDepartment , Professor newAdvisor)
方法簽名次之:SwitchMajor(string , Professor )
參數簽名再次之:(string , Professor )
對果對象A為滿足某個請求,而尋求另一對象B的幫助,這被稱作是A對B的委托.
對B的訪問有以下幾種方法:
B是A的一個attribute;
B是A的某個方法中的參數;
B是一個全局變量;
A通過C找到了B引用;
關于客戶代碼,引起對象A執行一個方法的代碼,稱作A的客戶代碼.
只要有可能就調用類的訪問器是一個比較好的習慣.
實體構造器分配足夠的空間來容納對象的attribute,從而構造一個全新的對象,注意,這里的空間大小只包括attribute.
如果沒有為類聲明一個構造器,那么C#會自動的為它提供一個缺省的無參構造器,并把對象中的attribute全部初始化為等價于零的值.
信息隱藏是一種強大的機制,它保護對對象數據的安全性,完整性,也能在應用程序的私有實現細節被不可避免地修改時防止客戶代碼出現連鎖反應.
類與類之間結構關系的正式名稱是"關聯"
關聯是創建鏈接的模板,在討論關聯時,經常將多元關聯分解是多個二元關聯.
聚合是一種特殊形式的關聯,它指明了"包括","由...構成".某對象屬于類A,那么類A就是聚合類.
如果類A中有一些特點不適用于類B,那么B就不應該是類A的派生類.
IEnumberator用來遍歷群集的較為高級的方法.
在聲明多維數組中的每個一維數組時,可以通過把初始值放置到花括號中的形式,來初始化所有元素必須使用new操作符,且必須指定數據類型.
多態是指兩個或多個屬于不同類型的對象,對同一個消息(方法調用)做出不同的響應的能力.
轉載于:https://www.cnblogs.com/laizhd/archive/2011/07/28/2119677.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的Beginning C# Objects 读书笔记(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NHibernate部分错误
- 下一篇: 对象化下的编程——字段