Type.IsClass Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar ett värde som anger om Type är en klass eller ett ombud, dvs. inte en värdetyp eller ett gränssnitt.
public:
property bool IsClass { bool get(); };
public bool IsClass { get; }
member this.IsClass : bool
Public ReadOnly Property IsClass As Boolean
Egenskapsvärde
true
Type om är en klass, annars false.
Implementeringar
Exempel
I följande exempel skapas en instans av en typ och anger om typen är en klass.
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
Kommentarer
Den här egenskapen returnerar true för klasser och ombud. Den returnerar false för värdetyper (för strukturer och uppräkningar) även om de är rutor.
Om strömmen Type representerar en typparameter i definitionen av en allmän typ eller allmän metod returnerar trueden här egenskapen alltid . Om den aktuella Type representerar en konstruerad allmän typ returnerar true den här egenskapen om den generiska typdefinitionen är en klassdefinition, det vill sägs att den inte definierar något gränssnitt eller en värdetyp.
Note
Den här egenskapen returnerar true för Type instanser som representerar Enum klasserna och ValueType . Dessa två klasser är bastyperna för uppräkningar respektive värdetyper, men de är inte själva uppräkningar eller värdetyper. Mer information finns i egenskaperna IsValueType och IsEnum.
Uppräkningsvärdet TypeAttributes.ClassSemanticsMask särskiljer en typdeklaration som klass eller gränssnitt. Både klasser och värdetyper markeras dock med attributet TypeAttributes.Class . Om du hämtar värdet för egenskapen Attribut för en typ och använder TypeAttributes.ClassSemanticsMask värdet för att avgöra om en typ är en klass i stället för en värdetyp, måste du även anropa IsValueType egenskapen. Exemplet för TypeAttributes uppräkningen innehåller ytterligare information samt ettexempel.
Den här egenskapen är skrivskyddad.