C# は、オブジェクトをプログラム内のすべての派生クラスの基本クラスと見なすプログラミング言語です。すべての型はオブジェクトから継承され、派生クラスのプロパティを拡張することで一部の機能を実行するためにさらに使用されます。派生する C# オブジェクトには、基本型のオブジェクトを参照および参照解除するためのメソッドと機能がいくつかあります。派生クラスと基本クラスの両方の場合におけるオブジェクトの参照は、作成されるオブジェクトの型をチェックするために重要な役割を果たします。オブジェクト型をチェックする互換性を持たせるためには、基本クラス オブジェクトでのキャストが必須です。
構文:
C# でオブジェクトの型をチェックするための構文フローは、オブジェクトの型とそれに関連付けられたオブジェクトの性質を取得することです。
public Type GetType ();
オブジェクトのタイプがすでに識別されている場合は、C# オブジェクトの識別に typeof() が使用されます
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()); } }
出力:
このプログラムは、C# のオブジェクト型をチェックするために非常に頻繁に使用される GetType() メソッドの使用方法を示します。また、出力に示されているように、実行時の実行時に必要な場合にも使用されます。
コード:
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); } } }
出力:
このプログラムは、出力に示されているように、参照がツリー内の継承を示しているインスタンスに対して 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 中国語 Web サイトの他の関連記事を参照してください。