GetType
This is a C# method on object. It provides a Type object. This object indicates the most derived type of the object instance.
GetType
in .NET accesses the actual type of the object instance. It does not report the base types or the variable type.
This program uses the GetType
method on a base type reference to more derived objects. We instantiate 3 classes—A, B and C—in Main
.
class
A is used as base class
. The class
B derives from class
A. And the class
C derives from class
B.class
, but stores the references in the A type variables.GetType
method returns the most derived type of the instances, not the type of the variable.using System; class A { } class B : A { } class C : B { } class Program { static void Main() { A a1 = new A(); A a2 = new B(); A a3 = new C(); Console.WriteLine(a1.GetType()); Console.WriteLine(a2.GetType()); Console.WriteLine(a3.GetType()); } }A B C
We demonstrated the GetType
method when used with derived and base classes. This C# method returns the most-derived class
—it does not return base classes.