C#のType.GetDefaultMembers()メソッド
C#のType.GetDefaultMembers()メソッドは、DefaultMemberAttributeが設定されている現在のTypeに対して定義されているメンバーを検索するために使用されます。
構文
public virtual System.Reflection.MemberInfo[] GetDefaultMembers ();
Type.GetDefaultMembers()メソッドを実装する例を見てみましょう-
例
using System; using System.Reflection; [DefaultMemberAttribute("subject")] public class Demo { public static void Main(){ Type t = typeof(Demo); MemberInfo[] member = t.GetDefaultMembers(); if (member.Length != 0){ for (int i = 0; i < member.Length; i++) Console.WriteLine("{0}", member[i]); } else { Console.WriteLine("Default Member isn't there!"); } } public void Name(String str) {} public String subject{ get{ return "Mathematics"; } } }
出力
これにより、次の出力が生成されます-
System.String subject
Type.GetDefaultMembers()メソッドを実装する別の例を見てみましょう-
例
using System; using System.Reflection; [DefaultMemberAttribute("rank")] public class Demo { public static void Main(){ Type t = typeof(Demo); MemberInfo[] member = t.GetDefaultMembers(); if (member.Length != 0){ for (int i = 0; i < member.Length; i++) Console.WriteLine("{0}", member[i]); } else { Console.WriteLine("Default Member isn't there!"); } } public void Name(String str) {} public int rank{ get{ return 5; } } }
出力
これにより、次の出力が生成されます-
Int32 rank
-
C#のType.Equals()メソッド
C#のType.Equals()メソッドは、現在のTypeの基になるシステムタイプが、指定されたオブジェクトまたはTypeの基になるシステムタイプと同じであるかどうかを判断します。 構文 public virtual bool Equals (Type o); public override bool Equals (object o); 上記のパラメータは、基礎となるシステムタイプが現在のタイプの基礎となるシステムタイプと比較されるオブジェクトです。 Type.Equals()メソッドを実装する例を見てみましょう- using System; public class Demo { &n
-
C#のタイプセーフとは何ですか?
C#で安全と入力しても、オブジェクトが他のオブジェクトのメモリに忍び込むことはできません。 -の概念を理解するための例を見てみましょう。 例 public class One { public int Prop{ get; set;} } public class Two { public int Prop{get;set;} public int Prop1{get;set;} } クラス1のオブジェクトがあるとしましょう- One ob = new One(); これで、オブジェクトobを2番目のクラス(ク