Type.IsInstanceOfType Method
.NET Framework 2.0
Determines whether the specified object is an instance of the current Type.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Assembly: mscorlib (in mscorlib.dll)
public boolean IsInstanceOfType ( Object o )
public function IsInstanceOfType ( o : Object ) : boolean
Parameters
- o
The object to compare with the current Type.
Return Value
true if the current Type is in the inheritance hierarchy of the object represented by o, or if the current Type is an interface that o supports. false if neither of these conditions is the case, or if o is a null reference (Nothing in Visual Basic), or if the current Type is an open generic type (that is, ContainsGenericParameters returns true).The following example demonstrates the use of the IsInstanceOfType method.
using namespace System; interface class IMyIfc{}; public ref class MyClass: public IMyIfc{}; public ref class MyDerivedClass: public MyClass{}; int main() { Type^ imyifcType = IMyIfc::typeid; MyClass^ mc = gcnew MyClass; Type^ mcType = mc->GetType(); MyClass^ mdc = gcnew MyDerivedClass; Type^ mdcType = mdc->GetType(); array<Int32>^arr = gcnew array<Int32>(10); Type^ arrayType = Array::typeid; Console::WriteLine( "Is Int32[] an instance of the Array class? {0}.", arrayType->IsInstanceOfType( arr ) ); Console::WriteLine( "Is myclass an instance of MyClass? {0}.", mcType->IsInstanceOfType( mc ) ); Console::WriteLine( "Is myderivedclass an instance of MyClass? {0}.", mcType->IsInstanceOfType( mdc ) ); Console::WriteLine( "Is myclass an instance of IMyIfc? {0}.", imyifcType->IsInstanceOfType( mc ) ); Console::WriteLine( "Is myderivedclass an instance of IMyIfc? {0}.", imyifcType->IsInstanceOfType( mdc ) ); }
import System.*;
public interface IMyIfc
{
} //IMyIfc
public class MyClass implements IMyIfc
{
} //MyClass
public class MyDerivedClass extends MyClass
{
} //MyDerivedClass
class IsInstanceTest
{
public static void main(String[] args)
{
Type imyifcType = IMyIfc.class.ToType();
MyClass mc = new MyClass();
Type mcType = mc.GetType();
MyClass mdc = new MyDerivedClass();
Type mdcType = mdc.GetType();
int array[] = new int[10];
Type arrayType = Array.class.ToType();
Console.WriteLine("Is int[] an instance of the Array class? {0}.",
System.Convert.ToString(arrayType.IsInstanceOfType(array)));
Console.WriteLine("Is myclass an instance of MyClass? {0}.",
System.Convert.ToString(mcType.IsInstanceOfType(mc)));
Console.WriteLine("Is myderivedclass an instance of MyClass? {0}.",
System.Convert.ToString(mcType.IsInstanceOfType(mdc)));
Console.WriteLine("Is myclass an instance of IMyIfc? {0}.",
System.Convert.ToString(imyifcType.IsInstanceOfType(mc)));
Console.WriteLine("Is myderivedclass an instance of IMyIfc? {0}.",
System.Convert.ToString(imyifcType.IsInstanceOfType(mdc)));
} //main
} //IsInstanceTest
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.
Community Additions
ADD
Show:
Note