《c#入門經典第七期》第十三章書後總結
為了避免命名空間限定的模糊,可以使用::運算子強制編譯器使用已建立的別名。還可以使用global命名空間作為頂級命名空間的別名。
從根類exception中派生,就可以建立自己的異常類。
許多類提供了事件,在**中發生某個觸發器時,就會引發事件。可以編寫處理程式,在引發事件時執行**。
可以定義自己的事件型別,給事件的處理程式建立指定的事件和委託型別。可以使用標準的、無返回型別的委託型別和派生於system.eventargs的定製事件產生,使事件處理程式有多種用途。還可以使用eventhandler和eventhandler委託型別。
在新增事件處理程式的地方直接定義要引發事件時執行的**,需要用delegate關鍵字定義匿名方法。
通過使用[attributename]語法,可以向類、方法和其他成員新增特性;通過從system.attribute派生,可以建立自己的特性。通過反射可以讀取特性值。
可以使用初始化器建立物件或集合的同時初始化它們。包括了乙個花括號中的**塊。物件初始化器可以提供乙個逗號分隔的屬性名/值隊列表,來設定屬性值。集合初始化器僅需逗號分隔的值列表。使用物件初始化器時,還可以使用非預設建構函式。
宣告變數時,使用var關鍵字可以忽略變數的型別。但只有型別可以在編譯期間確定時才能這麼做。
使用匿名型別,其成員根據用途來推斷。使用物件初始化器語法來定義匿名型別,每個設定的屬性都定義為唯讀屬性。
使用dynamic關鍵字定義動態型別變數,可以儲存任意值。可以使用一般的屬性或方法語法來訪問該變數中包含的值的成員,這些成員僅在執行時劍純。嘗試訪問不存在的成員,就會丟擲乙個異常。實現idynamicmetaobejectprovider介面,可以控制動態查詢的行為。
為沒有指定值的引數提供預設值就可以定義可選的方法引數。呼叫方法的**可以僅指定需要的引數。
可以根據位置或名稱(或者根據位置和名稱,但是位置引數要放前面)來指定方法的引數。明明的引數可按任意順序指定。
lambda表示式是定義匿名方法發一種快捷方式。而還能隱式的型別化。定義lambda表示式時,需要使用逗號分隔的引數列表(如果沒有引數,就使用空括號)、=>運算子和乙個表示式。表示式可以是放在花括號中的**塊。lambda表示式之多可以有8個引數和乙個可選的返回型別,lambda表示式可以用action、action<>和func<>委託型別來表示。許多可用於集合的linq擴充套件方法都使用lambda表示式引數
20191325第十三章學習筆記
本章論述了 tcp ip和網路程式設計,分為兩個部分。第一部分論述了 tcp ip協議及其應 用,具體包括tcp ip棧 ip位址 主機名 dns ip資料報和路由器 介紹了 tcp ip網 絡中的udp和tcp協議 埠號和資料流 闡述了伺服器 客戶機計算模型和套接字程式設計 介面 通過使用udp和...
java第十三章總結
url url new url url物件呼叫inputstream openstream 方法返回乙個輸入流 獲取位址 inetaddress類的靜態方法 getbyname string s gethostname 獲得inetaddress物件所含的網域名稱 gethostaddress 獲得...
C Primer Plus 第十三章筆記
1.使用公有派生,基類的公有成員將成為派生類的共有成員 基類的私有部分也將成為派生類的一部分,但只能通過基類的公有和保護方法訪問。2.派生類建構函式必須使用基類建構函式,意味著基類物件應當在程式進入派生類建構函式之前被建立。如果不呼叫基類建構函式,程式將使用預設的基類建構函式。3.可將派生類物件和位...