網路程式設計基礎:UDP/TCP Socket、ARP 與 ICMP 協定詳解
前言 本文介紹網路程式設計核心概念:UDP 與 TCP 通訊模型、Socket API 基本操作、ARP 位址解析協定、ICMP 控制訊息協定。雖然範例以 C/
C# 方法完整指南:簽名、參數傳遞、回傳值、非同步、迭代器與運算式主體
方法基本結構 [modifiers] returnType MethodName(parameterList) { // method body }
C# 自動實作屬性:語法、初始化、不可變型別與輕量類別設計
自動實作屬性 C# 3.0+ 提供語法糖:編譯器自動產生隱藏的支援欄位,適合無額外邏輯的屬性。 基本語法 class Customer { publ
C# 巢狀類型與匿名類型:定義、存取與 LINQ 實戰
巢狀類型 定義在另一個類型內部的類型。預設為 private,可指定 public、protected 等。 基本語法 _parent = parent;
C# 建構函式詳解:私有建構函式、靜態建構函式與單例模式
私有建構函式 防止外部實例化,適用於: 純靜態工具類別(如 Math) 單例模式 工廠模式控制建立 範例:計數器 ++CurrentCount; }
C# 抽象類別深度解析:抽象方法、屬性與多型實作
抽象類別 abstract class 不可實例化,旨在提供共同基底定義供多個衍生類別重用。可包含抽象成員(無實作)與具體成員。 public abstrac
C# 參數傳遞機制:值傳遞、參考傳遞、結構與類別的差異
值傳遞 vs 參考傳遞 預設為值傳遞:方法收到參數的副本,修改不影響原變數。加上 ref 或 out 可改為參考傳遞。 範例:int 參數 static vo
C# 靜態類別、靜態成員與密封類別完整解析
靜態類別 關鍵字 static class 特徵: 只能包含靜態成員(欄位、屬性、方法、事件) 無法實例化(不能用 new) 隱含 sealed,不可被繼承
C# 物件與集合初始化器:語法、範例與字典初始化
物件初始化器 允許在建立物件時直接指派屬性值,無須呼叫對應建構函式。編譯器會先呼叫預設建構函式,再依序設定屬性。 基本用法 ${FirstName} {ID
C# 解九宮格魔方陣:所有行列對角線和為 4 的窮舉演算法
問題描述 給定 3x3 九宮格,每個格子填入非負整數,滿足以下 8 條件(3 行、3 列、2 對角線)的算術運算結果皆為 4: a + b - 9 = 4
C# 陣列操作精要:foreach 迭代與陣列參數傳遞
foreach 迭代陣列 foreach 提供唯讀、循序存取陣列元素的簡潔語法,適用於任何實作 IEnumerable 的集合。 一維陣列 int[] num
C# 覆寫 ToString 方法:讓物件輸出更有意義
為什麼要覆寫 ToString? 所有型別隱含繼承自 Object,預設 ToString() 僅回傳型別全名。覆寫後可提供具體物件狀態資訊,除錯、日誌、UI
C# 正則表達式完整速查指南:語法、範例與進階技巧
前言 正則表達式是字串比對與解析的利器。本文系統整理 C# 常用 Regex 語法、字元類別、定位、量詞、群組、貪婪/非貪婪、前瞻/後顧等進階功能,並附上可直接
C# 異常處理進階:try-catch-finally 反模式分析與最佳實務
前言 上一篇介紹了異常處理基本觀念,本文透過實務中常見的「壞味道」代碼,深入剖析如何正確使用 try-catch-finally,避免資源洩漏、堆疊追蹤遺失與效
C# 繼承機制深度解析:基類、派生類與虛擬方法覆寫
繼承:物件導向三大支柱之一 繼承允許定義可重用、擴充及修改其他類別行為的新類別。被繼承的類別稱為「基類」,繼承的類別稱為「派生類」。C# 單一繼承(一個直接基類
C# 檔案與目錄操作完整指南:建立、複製、移動、刪除
前言 在 C# 開發中,檔案與目錄的操作是基礎且高頻的需求。System.IO 命名空間提供了豐富的類別(如 File、Directory、FileInfo、D
C# 反射入門教程:執行期型別發現、動態建立實例、方法呼叫與委派建立
反射核心命名空間 using System.Reflection; // 核心型別:Type, MethodInfo, PropertyInfo