1. 程式人生 > 其它 >C#學習筆記(2):方法

C#學習筆記(2):方法

以《C#6.0本質論(Essential C# 6.0)》為基本,參考《深入解析C#(C# in Depth, 4th Edition)》、《C#圖解教程(Illustrated C# 7, 5th Edition)》。圓括號內是本質論書中位置、方括號是個人補充

方法

方法呼叫由方法名稱、形參列表、以及返回值構成(P107)

作用域是指可以通過它的非限定名稱引用到它的區域。(P109)

方法引數

ref引數

引數預設是傳值(P119)引用引數只是傳遞的變數的別名(P121)

out引數

傳引用的方法傳入一個未初始化的區域性變數(P121)。和ref引數的區別是,如果引數被標記成out,編譯器會核實在方法中所有正常返回的程式碼路徑中是否都對該引數進行了賦值。(P123)

方法過載

C#根據方法名、引數資料型別或者引數數量的不同來確定唯一性(P127)

方法過載是一種操作性多型

在一個方法中實現核心功能,所有其他過載的方法都呼叫這個方法(P129)

可選引數

預設值必須是常量,或者說必須是能在編譯時確定的值(P131)【方法編譯】

方法解析【繫結】:最終選擇得到時形參型別是更具體地派生型別地那個方法(P132)

拓展方法

使用繼承來特化型別要優於使用拓展方法(P184)