C# Challenge 08 - 使用 C# 從 .NET Class Library 呼叫方法
Microsoft 2023 年所提供的 C# codecamp 基礎課程,總共有 38 個單元,完成後就可以獲得 Certification ,今天要來跟大家分享的是第八單元章節的內容。
本節內容
什麼是 .NET Class Library?
.NET Class Library 是一個數以千計類別的集合,當中包含數以萬計的方法。
像是常用的 Console
類別裡面包含了 Write()
和 WriteLine()
等方法,另外要特別注意的地方是, 資料型別 也是屬於 .NET Class Library 的範疇之一。
有狀態和無狀態方法
在軟體發展專案中,狀態 ( State ) 一詞是用來描述執行環境在特定時間點的條件。
以下共分為兩種
- 無狀態方法: 又稱為靜態方法 ,指的是該方法能夠在不需要參考或是變更儲存在記憶體中任何值的情況下操作。
- 有狀態方法: 又稱為執行個體方法 ,指的是其必須仰賴由自己執行的前幾行程式碼儲存在記憶體中的值。
特別注意:單一類別 ( Class ) 可以同時支援具狀態與無狀態方法。 不過,當您需要呼叫有狀態方法時,您必須先建立類別的執行個體,來使該方法可以存取狀態。
建立新的類別執行個體 - 物件
1 | Random dice = new Random(); |
這裡使用到的是 new
運算子,它的執行工作為:
- 會先要求電腦記憶體中的位址,該位址必須大到可以儲存以
Random
類別為基礎的新物件。 - 會建立新物件,並將其儲存在該記憶體位址。
- 會傳回記憶體位址,以將其儲存在
dice
變數中。
Void 方法
不會在方法跑完時回傳任何的值,稱為 Void 方法。
參數的概念
通常,’parameter’ 和 ‘argument’ 字詞會交替使用。 不過,’parameter’ 是指在方法內使用的變數。 ‘argument’ 是呼叫方法時傳遞的值。
多載
多載 ( Overload ) 就是指一個類別具有相同名稱但不同參數的函式。
Math.Max()
1 | int firstValue = 500; |
Math.Max() 方法支援 13 個多載版本以接受不同的資料類型。 呼叫 Math.Max() 方法的多載版本將接受 int 作為這兩個輸入參數,並以 int 的形式傳回這兩個值中較大的值。
重點整理
今天一樣都是基礎的概念,不過有開始提到在 function 中傳遞參數時要加上型別,還有 C# 的 void
方法都是之前 JS 內沒有遇過的。
那我們下次見ʘ‿ʘ