Type.IsClass Type.IsClass Type.IsClass Type.IsClass Property

Definition

Ruft einen Wert ab, der angibt, ob Type eine Klasse oder ein Delegat ist, d. h. weder ein Werttyp noch eine Schnittstelle.Gets a value indicating whether the Type is a class or a delegate; that is, not a value type or interface.

public:
 property bool IsClass { bool get(); };
public bool IsClass { get; }
member this.IsClass : bool
Public ReadOnly Property IsClass As Boolean

Eigenschaftswert

true, wenn Type eine Klasse ist, andernfalls false.true if the Type is a class; otherwise, false.

Implementiert

Beispiele

Im folgenden Beispiel wird eine Instanz eines Typs erstellt, und es wird angegeben, ob der Typ eine Klasse ist.The following example creates an instance of a type and indicates whether the type is a class.

using namespace System;
using namespace System::Reflection;
public ref class MyDemoClass{};

int main()
{
   try
   {
      Type^ myType = Type::GetType( "MyDemoClass" );
      
      // Get and display the 'IsClass' property of the 'MyDemoClass' instance.
      Console::WriteLine( "\nIs the specified type a class? {0}.", myType->IsClass );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "\nAn exception occurred: {0}.", e->Message );
   }

}

using System;
using System.Reflection;

public  class MyDemoClass
{
}

public class MyTypeClass
{
    public static void Main(string[] args)
    {
        try
        {
            Type  myType = typeof(MyDemoClass);
            // Get and display the 'IsClass' property of the 'MyDemoClass' instance.
            Console.WriteLine("\nIs the specified type a class? {0}.", myType.IsClass); 
        }
        catch(Exception e)
        {
            Console.WriteLine("\nAn exception occurred: {0}." ,e.Message);
        }
    }
}
Imports System
Imports System.Reflection
Imports Microsoft.VisualBasic

Public Class MyDemoClass
End Class 'MyDemoClass

Public Class MyTypeClass
    Public Shared Sub Main()
        Try
            Dim myType As Type = GetType(MyDemoClass)
            ' Get and display the 'IsClass' property of the 'MyDemoClass' instance.
            Console.WriteLine(ControlChars.Cr + "Is the specified type a class? {0}.", myType.IsClass.ToString())
        Catch e As Exception
            Console.WriteLine(ControlChars.Cr + "An exception occurred: {0}.", e.Message.ToString())
        End Try
    End Sub 'Main
End Class 'MyTypeClass

Hinweise

Diese Eigenschaft gibt true sowohl für-Klassen als auch für Delegaten zurück.This property returns true for classes as well as delegates. Sie gibt false für Werttypen (für Strukturen und Enumerationen) zurück, auch wenn Sie gekapselt sind.It returns false for value types (for structures and enumerations) even if they are boxed.

Wenn der aktuelle Type einen Typparameter in der Definition eines generischen Typs oder einer generischen Methode darstellt, gibt diese trueEigenschaft immer zurück. Wenn der aktuelle Type einen konstruierten generischen Typ darstellt, gibt true diese Eigenschaft zurück, wenn die generische Typdefinition eine Klassendefinition ist, d. h., es wird keine Schnittstelle oder ein Werttyp definiert.If the current Type represents a type parameter in the definition of a generic type or generic method, this property always returns true.If the current Type represents a constructed generic type, this property returns true if the generic type definition is a class definition; that is, it does not define an interface or a value type.

Hinweis

Diese Eigenschaft gibt true für Type -Instanzen zurück, Enum die ValueType die Klassen und darstellen.This property returns true for Type instances that represent the Enum and ValueType classes. Diese beiden Klassen sind die Basis Typen für Enumerationen und Werttypen, aber Sie sind nicht selbst Enumerationen oder Werttypen.These two classes are the base types for enumerations and value types, respectively, but they are not enumerations or value types themselves. Weitere Informationen finden Sie unter den IsValueType Eigenschaften IsEnum und.For more information, see the IsValueType and IsEnum properties.

Der TypeAttributes.ClassSemanticsMask -Enumerationswert unterscheidet eine Typdeklaration als Klasse oder Schnittstelle. Allerdings werden sowohl Klassen als auch Werttypen mit TypeAttributes.Class dem-Attribut markiert.The TypeAttributes.ClassSemanticsMask enumeration value distinguishes a type declaration as class or interface.However, both classes and value types are marked with the TypeAttributes.Class attribute. Wenn Sie den Wert der Attributeigenschaft eines Typs abrufen und den TypeAttributes.ClassSemanticsMask Wert verwenden, um zu bestimmen, ob ein Typ eine Klasse anstelle eines Werttyps ist, müssen Sie auch die IsValueType -Eigenschaft aufrufen.If you retrieve the value of a type's Attributes property and use the TypeAttributes.ClassSemanticsMask value to determine whether a type is a class instead of a value type, you must also call the IsValueType property. Das Beispiel für die TypeAttributes -Enumeration enthält zusätzliche Informationen und ein Beispiel.The example for the TypeAttributes enumeration contains additional information as well as anexample.

Diese Eigenschaft ist schreibgeschützt.This property is read-only.

Gilt für:

Siehe auch