Type.IsClass Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der angibt, ob es Type sich um eine Klasse oder einen Delegaten handelt, d. h. keinen Werttyp oder eine Schnittstelle.
public:
property bool IsClass { bool get(); };
public bool IsClass { get; }
member this.IsClass : bool
Public ReadOnly Property IsClass As Boolean
Eigenschaftswert
true wenn es sich um Type eine Klasse handelt; falseandernfalls .
Implementiert
Beispiele
Im folgenden Beispiel wird eine Instanz eines Typs erstellt und angegeben, ob es sich bei dem Typ um eine Klasse handelt.
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);
}
}
}
type MyDemoClass = class end
try
let myType = typeof<MyDemoClass>
// Get and display the 'IsClass' property of the 'MyDemoClass' instance.
printfn $"\nIs the specified type a class? {myType.IsClass}."
with e ->
printfn $"\nAn exception occurred: {e.Message}."
Imports System.Reflection
Public Class MyDemoClass
End Class
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
End Class
Hinweise
Diese Eigenschaft gibt sowohl für Klassen als auch für Stellvertretungen zurück true . Er gibt false für Werttypen (für Strukturen und Enumerationen) zurück, auch wenn sie boxen.
Wenn der aktuelle Parameter in der Definition eines generischen Typs oder einer generischen Type Methode darstellt, gibt diese Eigenschaft immer zurück true. Wenn der aktuelle einen konstruierten generischen Type Typ darstellt, gibt diese Eigenschaft zurück true , wenn es sich bei der generischen Typdefinition um eine Klassendefinition handelt. Das heißt, es definiert keine Schnittstelle oder einen Werttyp.
Hinweis
Diese Eigenschaft gibt für Type Instanzen zurücktrue, die die Enum Klassen ValueType darstellen. Diese beiden Klassen sind die Basistypen für Enumerationen und Werttypen, sie sind jedoch keine Enumerationen oder Werttypen selbst. Weitere Informationen finden Sie unter den IsValueType Und IsEnum Eigenschaften.
Der TypeAttributes.ClassSemanticsMask Enumerationswert unterscheidet eine Typdeklaration als Klasse oder Schnittstelle. Sowohl Klassen als auch Werttypen werden jedoch mit dem TypeAttributes.Class Attribut gekennzeichnet. Wenn Sie den Wert der Attributes-Eigenschaft eines Typs abrufen und den TypeAttributes.ClassSemanticsMask Wert verwenden, um zu bestimmen, ob es sich bei einem Typ um eine Klasse anstelle eines Werttyps handelt, müssen Sie auch die IsValueType Eigenschaft aufrufen. Das Beispiel für die TypeAttributes Enumeration enthält zusätzliche Informationen sowie ein Beispiel.
Diese Eigenschaft ist schreibgeschützt.