首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 入門核心筆記:從 Hello World 到委派、陣列、字串與結構

     編輯:關於C語言

C# 語言核心特性速覽

  • 純物件導向:無全域函式/變數/常數,一切封裝於類別/結構。
  • 單一繼承,支援多型、封裝、介面多重實作。
  • 移除指標 (預設),改用 ref/out/unsafe 受控替代方案。
  • 統一存取運算子 . (無 ::、->)。
  • 命名空間 (namespace) 組織型別層級,using 匯入簡化名稱。

第一個程式:主控台應用程式


using System;

class HelloApp
{
    static void Main()
    {
        Console.WriteLine("Welcome to C#!");
    }
}
  • Main 為進入點,必須在類別/結構內,static,回傳 void 或 int。
  • Console.WriteLine 輸出,Console.ReadLine 輸入。
  • 格式化字串:Console.WriteLine("Hello {0}", name);。

命令列參數


static void Main(string[] args)
{
    Console.WriteLine($"參數個數: {args.Length}");
    for (int i = 0; i < args.Length; i++)
        Console.WriteLine($"Arg[{i}] = {args[i]}");
}

註解

  • 單行:// 註解
  • 多行:/* 註解 */
  • 文件註解:/// XML 文件註解 (支援 IntelliSense 與文件產生器)。

常數與結構


class Constants
{
    public const double PI = 3.14159; // 編譯期常數,隱含 static
}

struct Person
{
    public string Name;
    public uint Age;
    public string Email;
}

class Demo
{
    static void Main()
    {
        Person p;
        p.Name = "Mike";
        p.Age = 24;
        p.Email = "mike@example.com";
        Console.WriteLine($"姓名: {p.Name}, 年齡: {p.Age}, Email: {p.Email}");
    }
}

結構 為值型別,堆疊配置,指派複製實體。適合小型資料群組。

列舉


enum WeekDay : byte { Sun=1, Mon, Tue, Wed, Thu, Fri, Sat }
// 預設底層型別 int,可指定 byte/short/long 等。
// 第一項預設 0,後續遞增 1,可手動指定值。

陣列

  • 一維:int[] a = new int[6] {1,2,3,4,5,6}; 或 string[] s = {"C","C++","C#"};
  • 多維 (矩形):int[,] m = {{1,2},{3,4}}; 存取 m[0,1]。
  • 交錯陣列:int[][] jagged = new int[3][]; 每行長度可不同。
  • Length 取得總元素數 (一維) 或各維度長度 (多維用 GetLength(d))。

// 一維遍歷
foreach (var item in arr) Console.WriteLine(item);

// 二維遍歷
for (int i = 0; i < rows; i++)
    for (int j = 0; j < cols; j++)
        Console.WriteLine(arr[i, j]);

基本型別別名與物件階層

別名.NET 型別分類
objectSystem.Object所有型別的終極基底 (參考型別)
stringSystem.String不可變字串 (參考型別,但行為似值型別)
intSystem.Int32值型別

object 變數可裝箱任何值型別;string 支援 + 串聯、== 比較內容、[index] 存取字元。

委派:型別安全的函式指標


delegate void Greeting(string name); // 宣告委派型別

class Program
{
    static void Hello(string n) => Console.WriteLine($"Hello, {n}!");
    static void Bye(string n) => Console.WriteLine($"Bye, {n}!");

    static void Main()
    {
        Greeting g1 = Hello;
        Greeting g2 = Bye;
        Greeting g3 = g1 + g2; // 多點廣播
        g3("Mike"); // 依序呼叫 Hello、Bye

        Greeting g4 = g3 - g1; // 移除 Hello
        g4("Mike"); // 僅呼叫 Bye
    }
}
  • 委派繼承 System.MulticastDelegate,支援 +/- 組合/移除。
  • 三步驟:宣告 → 實例化 (指向同簽章方法) → 呼叫 (Invoke 或直接像方法)。
  • 適用於事件、回呼、策略模式、非同步程式設計基礎。

結語

掌握上述核心語法 (型別系統、控制流程、陣列、字串、委派) 即具備 C# 開發基礎。後續深入主題:泛型、LINQ、非同步/等待、模式比對、記憶體管理與 Span<T> 高效能程式設計。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved