Gets a value indicating whether the Type is an interface; that is, not a class or a value type.
Assembly: mscorlib (in mscorlib.dll)
Syntax . . :: . IsInterface
Public ReadOnly Property IsInterface As Booleanpublic bool IsInterface { get; }public:
virtual property bool IsInterface {
bool get () sealed;
}abstract IsInterface : bool
override IsInterface : boolImplements
_Type Remarks
The ClassSemanticsMask distinguishes a type declaration as class, interface or value type.
If the current Type represents a type parameter in the definition of a generic type or generic method, this property always returns false.
This property is read-only.
Examples
The following example creates an interface, checks for the interface type, and indicates whether a class has the IsInterface property set.
Imports System
Imports Microsoft.VisualBasic
' Declare an interface.
Interface myIFace
End Interface 'myIFace
Class MyIsInterface
Public Shared Sub Main()
Try
' Get the IsInterface attribute for myIFace.
Dim myBool1 As Boolean = GetType(myIFace).IsInterface
' Display the IsInterface attribute for myIFace.
Console.WriteLine("Is the specified type an interface? {0}.", myBool1.ToString)
' Get the IsInterface attribute for MyIsInterface.
Dim myBool2 As Boolean = GetType(MyIsInterface).IsInterface
' Display the IsInterface attribute for MyIsInterface.
Console.WriteLine("Is the specified type an interface? {0}.", myBool2.ToString)
Catch e As Exception
Console.WriteLine(ControlChars.Cr + "An exception occurred: {0}", e.Message.ToString)
End Try
End Sub 'Main
End Class 'MyIsInterface
using System;
// Declare an interface.
interface myIFace
{
}
class MyIsInterface
{
public static void Main(string []args)
{
try
{
// Get the IsInterface attribute for myIFace.
bool myBool1 = typeof(myIFace).IsInterface;
//Display the IsInterface attribute for myIFace.
Console.WriteLine("Is the specified type an interface? {0}.", myBool1);
// Get the attribute IsInterface for MyIsInterface.
bool myBool2 = typeof(MyIsInterface).IsInterface;
//Display the IsInterface attribute for MyIsInterface.
Console.WriteLine("Is the specified type an interface? {0}.", myBool2);
}
catch(Exception e)
{
Console.WriteLine("\nAn exception occurred: {0}.", e.Message);
}
}
}
using namespace System;
// Declare an interface.
interface class myIFace{};
public ref class MyIsInterface{};
void main()
{
try
{
// Get the IsInterface attribute for myIFace.
bool myBool1 = myIFace::typeid->IsInterface;
//Display the IsInterface attribute for myIFace.
Console::WriteLine( "Is the specified type an interface? {0}.", myBool1 );
// Get the attribute IsInterface for MyIsInterface.
bool myBool2 = MyIsInterface::typeid->IsInterface;
//Display the IsInterface attribute for MyIsInterface.
Console::WriteLine( "Is the specified type an interface? {0}.", myBool2 );
}
catch ( Exception^ e )
{
Console::WriteLine( "\nAn exception occurred: {0}.", e->Message );
}
}
Platforms
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.