標籤:sign inter isa row 技術 bool alt object 子類
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 反射常用函數{ class Program { static void Main(string[] args) { Console.WriteLine("Student是否能為Person類型賦值"); bool bl = typeof(Person).IsAssignableFrom(typeof(Student));//True Console.WriteLine(bl); Student s = new Student(); Person p = new Person(); //IsInstanceOfType(object o)判斷對象o是否為當前類的執行個體(當前類可以是o的類、父類、介面) //子類可賦值為父類bool bl1 = typeof(Person).IsInstanceOfType(s);//True //bool bl1 = typeof(I1).IsInstanceOfType(s);//True //bool bl1 = IsInstanceOfType(s);//True //判斷當前類是否為類Person的子類 //bool bl1 = s.GetType().IsSubclassOf(typeof(Person)); //判斷是否為抽象類別 bool bl1 = typeof(Person).IsAbstract; Console.WriteLine(bl1); Console.ReadKey(); } } class Person { } class Student:Person,I1 { public void Test() { throw new NotImplementedException(); } } interface I1 { void Test(); }}
C#常見函數