更新於 2024/06/21閱讀時間約 3 分鐘

Microsoft C# |基礎知識彙整 2

前言

  C#依然有許多需要學習的知識,本篇文章將會介紹命名空間、類別、方法、程式碼區塊等知識,並介紹字串。

C#構成

  從 Unity 學習 C# 時,有些知識不會碰觸,並且容易對 Script 組成不熟,直到持續撰寫程式至一定程度後,正確認知自己所寫的內容與來源,是遊戲程式成長為程式員的基礎知識補全。

命名空間(namespace)
  如同姓氏或家族名,類別包含會實作的程式碼;類別會組織為命名空間,以避免命名衝突,在不同的命名空間中,使用相同的名稱是可行的。
  命名空間會釐清類別名稱,相同的類別名稱在不同的命名空間中可以同時存在,不過不會影響方法。
子命名空間
namespace MyNewApp.Business
{
   // Classes here     
}  
namespace MyNewApp.Data 
{
   // Classes here     
}
  我們視需要加入多個命名空間,並建立多個層級的命名空間,只需要持續使用點運算子來附加命名空間即可。

類別(Class)
  適用方法(function)、屬性(Property)、事件(Event)、欄位(Field)等成員的容器,如果是具狀態物件的方法就必須要用到new關鍵字,或是直接呼叫不具狀態的方法。

方法(function)
  執行單位的程式碼區塊,當呼叫後遇到下列條件停止:
  • 執行階段遇到 return 關鍵字。
  • 執行階段遇到例外狀況且無法繼續。
  • 執行階段成功執行方法中的每一行程式碼。
補充:Main()特殊,執行階段預設將搜尋它,並由此開始。

程式碼區塊
  一行或多行程式碼的集合,以左右大括弧{}來定義,它代表在我們的軟體系統中具有單一用途的程式碼完整單位,程式碼區塊是了解程式碼組織和結構的核心,並會定義變數範圍的界限。
程式碼區塊內
在程式碼區塊內所建立的變數只能使用於區塊內,不過這種變數可以不用初始化,也就是說可以創建空的欄位而不指派。
程式碼區塊外
在程式碼區塊外所建立的變數必須初始化,如果沒有指派值給區塊外的變數,編譯器會顯示錯誤。

字串

  無論是Debug.Log還是官方的Console.Write,都一定會使用到字串,在Unity中還會使用到text,這也會使用到字串。

字元逸出序列
  為執行階段的特殊指示,說明要插入將會影響字串輸出的特殊字元。在C#中,逸出字元序列開頭為反斜線「\」,並且在後面接著另一個字元。

使用方法
  • 新增空格:\t
  • 換行:\n
  • 如果要使用「"」:\""\
  • 如果要使用「\」:\\ \\

逐字字串常值
  會保留所有空白與字元,不需要使用任何的反斜線,直接在""前使用「@」指示詞。而這包含換行。

Unicode逸出字元
  \u逸出序列,然後新增代表Unicode (UTF - 16)字元的四字元代碼。

字串插補
  字串插補會透過使用「範本」與一個或多個「插補運算式」將多個值合併為單一常值字串。「插補運算式」是透過左右大括弧{}括住的變數,當常值字串具有前置$字元時,它會變成範本。
string message = greeting + " " + firstName + "!";
string message = $"{greeting} {firstName}!";
上述這兩個程式碼具有相同作用。

補充
  如果要同時使用「逐字字串常值」和「字串插補」,要寫$@而非@$。

後記

  我看了許多Microsoft的C#教學,我整理起來的筆記還有常常一串,我打算繼續寫下去,並整理成一系列的文章,這一系列的文章會使用Microfost C# 作為一個系列。
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.