Home
R
Cancel

[C# 筆記] 靜態成員和非靜態成員的區別

實體化: 靜態成員屬於類別,而不屬於類別的實體。可以透過類別名稱直接存取靜態成員,而不需要建立類別的實體。 非靜態成員屬於類別的實體。要存取非靜態成員,需要先建立類別的實體,然後透過實體來存取成員。 實體(實例、instance) 記憶體分配: 靜態成員在程式啟動時就分配內存,並在程式結束時釋放。它們的生命週期與應用程式的生命週期相同。 非靜態成員在創建...

[C# 筆記] Strings = new String(“xyz”); 建立了幾個 String Object?

這段程式碼實際上會創建一個字串對象,其中每個字元都是從提供的字串中複製的,但是因為 string 對象本身是不可變的,所以這樣的使用方式並不常見。 通常,我們直接使用字串字面量或透過其他方法建立字串,而不需要使用 new string 建構函數。例如: string s = "xyz"; //使用字串 或者如果你有字元數組,可以使用: char[] arr = {'x','y','...

[C# 筆記] 分析下面程式碼,a、b 的值是多少?

string strTmp = "a1某某某"; int a = System.Text.Encoding.Default.GetBytes(strTmp).Length; int b = strTmp.Length; //a = 11(1+1+3*3) //b = 5 分析:在UTF-8編碼下,每個中文字元通常佔用3個位元組,而每個英文字元和數字佔用1個位元組。 UTF-8編...

[C# 筆記] 在 .net 中,Assembly 的意思是?

「配件」(Assembly)通常指一個可執行檔或一個程式碼庫,其中包含有關.NET應用程式的資訊。配件是.NET的基本建置單元,它可以包含一個或多個模組,而每個模組可以包含一個或多個類型(類別、介面等)。 可執行檔、組件資訊、模組、組件清單、部署和版本控制、GAC(Global Assembly Cache) C# .NET面试系列一:基础语法

[C# 筆記] CTS、CLS、CLR 分別作何解釋?

CTS(Common Type System) CTS 是.NET平台中所有程式語言都必須遵循的規範,它定義了一組公共的資料類型和規則,以確保不同語言之間的互通性。這意味著不同的程式語言可以使用相同的資料類型,從而實現相互溝通和互動。 CLS(Common Language Specification) CLS 是定義在CTS上的一組規範,目的是確保.NET程式語言之間的互通性。 ...

[C# 筆記] 現有一個整數 number,請寫一個方法來判斷這個整數是否是 2 的 N 次方

% (Mod) 運算 取Mod運算: 用number%2==0 if (number % 2 == 0) { //是 2 的 N 次方 } 位元運算 可以透過位元運算來判斷一個整數是否是2的N次方。如果一個整數是2的N次方,那麼它的二進位表示中只有一個1,例如,2、4、8、16等。 public class Solution { public bool IsPowerO...

[C# 筆記] const 和 readonly 有什麼不同?

都用於定義常數。主要有以下區別: 初始化位置不同。 const必須在宣告的同時賦值;readonly既可以在宣告處賦值,也可以在靜態建構方法(必須是靜態建構方法,普通建構方法不行)裡賦值。 修飾對象不同。 const即可以修飾類別的欄位,也可以修飾局部變數;readonly只能修飾類別的欄位 const是編譯時常數,在編譯時決定該值;...

[C# 筆記] 用最有效的方法算出 2 乘以 8 等於幾?

採用位元運算符 在二進位中,左移運算子 << 是將二進制數向左移動指定的位數,而乘以2的n次方的效果可以透過左移n位來實現。 因為8等於2的三次方,所以2乘以8可以透過將2左移3位來實現。這就是為什麼 2 << 3 的結果是16。 在二進位中,左移運算子 << 是將二進制數向左移動指定的位數。對於整數2,它的二進位表示是 0000 0010。 如果...

[C# 筆記] C# 中的委託是什麼?

委託(Delegate)是一種類型,它表示對一個或多個方法的引用。委託可以看作是函數指標的一種類型安全的封裝,它允許將方法作為參數傳遞給其他方法,或將方法賦值給委託變數。 .net中有很多內建的委託類型,如Action和Func,它們分別用來表示無回傳值的方法和有回傳值的方法。這些內建委託類型在泛型和非泛型形式中都可用 作用:提高方法的擴展性 C# .NET面试系列一:基础语法

[C# 筆記] int? 和 int 有什麼差別?

int? 為可空型,預設值是null,它允許具有正常整數值或 null。在需要表示缺失或未知值的情況下,可以使用 int? int 是值類型,不允許為 null,預設值是0,它總是有一個具體的整數值 int?是透過int裝箱為引用型別實現 C# .NET面试系列一:基础语法