C# 是一種將物件視為程式中所有衍生類別的基底類別的程式語言。所有類型都從物件繼承,這些物件透過擴展派生類別的屬性進一步用於執行某些功能。派生的 C# 物件具有一些方法和能力來引用和取消引用基底類型的任何物件。在派生類別和基底類別的情況下引用物件對於檢查所建立的物件類型都起著重要作用。必須使用基類物件進行強制轉換,以使其相容以檢查物件類型。
文法:
C# 中檢查物件類型的語法流程是取得物件的類型及其關聯的物件性質。
public Type GetType ();
如果已經識別了物件類型,則使用 typeof() 來識別 C# 物件
typeof()
C# 中的物件類型檢查在確定與實作相關的物件的類型和細節方面起著關鍵作用。這些細節對於程式設計師的實作和需求滿足來說非常重要。因此,可以使用某些方法來檢查 C# 中的對象,如下所示:
讓我們討論一下 C# 檢查物件類型的範例。
程式示範了 C# 中物件的用法以及系統中已內建的對象,如輸出所示。
代碼:
using System; using System.Text; class Demo_Prog { static void Main() { object vl_1 = new StringBuilder(); Console.WriteLine(vl_1.GetType()); } }
輸出:
程式示範了 GetType() 方法的使用,該方法經常用於檢查 C# 的物件類型,也可以在執行時執行時需要時使用,如輸出所示。
代碼:
using System; namespace Consl_App1 { class Fruit { } class Kiwi : Fruit { } class Pro_g { static Fruit newFruit() { return new Kiwi(); } static void Main(string[] args) { Fruit f = newFruit(); Console.WriteLine(typeof(Fruit)); Console.WriteLine(f.GetType()); Console.ReadKey(); } } }
輸出:
程式示範了類別中從基底物件派生的物件(如輸出所示),以識別 C# 中類別中物件的類型。
代碼:
using System; public class M_Bs_Cl { } public class M_Drvd_Cl: M_Bs_Cl { } public class Test { public static void Main() { M_Bs_Cl m_bs = new M_Bs_Cl(); M_Drvd_Cl m_Drvd = new M_Drvd_Cl(); object obj = m_Drvd; M_Bs_Cl bsc = m_Drvd; Console.WriteLine("m_bs: Type is obj{0}", m_bs.GetType()); Console.WriteLine("m_Drvd: Type is obj{0}", m_Drvd.GetType()); Console.WriteLine("object obj = m_Drvd: obj_Type is {0}", obj.GetType()); Console.WriteLine("M_Bs_Cl b = myDerived: Type is {0}", bsc.GetType()); } }
輸出:
程式示範了對象的用法以及所有各種類型的參數作為對象,如輸出所示。這些不同類型的參數用於獲取值,並且物件的類型根據其擁有的性質來標識。
代碼:
using System; class Demo_Prog { static void Main() { string vl_1 = "Java Pearl Ruby"; Verify(vl_1); Verify((object)vl_1); int num = 150; Verify(num); Verify((object)num); Verify(null); } static void Verify(object vl_1) { Console.WriteLine(vl_1 != null); if (vl_1 is string) { Console.WriteLine("Value_Of_String: {0}", vl_1); } else if (vl_1 is int) { Console.WriteLine("Value_Of_int: {0}", vl_1); } } }
輸出:
此程式示範了 is 是一個與物件相關的運算符,對於任何引用顯示樹中繼承關係的實例(如輸出中所示),它必須傳回 true 值。
代碼:
using System; public class C1 { } public class C2: C1 { } public class C3 { } public class sck_br { public static void Main() { C1 ob_1 = new C1(); C2 ob_2 = new C2(); Console.WriteLine(ob_1 is C1); Console.WriteLine(ob_1 is Object); Console.WriteLine(ob_2 is C2); Console.WriteLine(ob_2 is Object); Console.WriteLine(ob_2 is C2); Console.WriteLine(ob_2 is C3); Console.WriteLine(ob_2 is C3); } }
輸出:
C# 物件類型主要由程式設計師使用,以便在編譯時或有時在程式執行時執行時取得有關物件的詳細資訊。傳回值的類型取決於執行或編譯時所需的變數或物件的類型。因此,創建 C# 物件類型在資訊元資料方面起著非常重要的作用。
以上是C# 檢查物件類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!