Type.IsClass Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá hodnotu určující, zda Type je třída nebo delegát; to znamená, ne typ hodnoty nebo rozhraní.
public:
property bool IsClass { bool get(); };
public bool IsClass { get; }
member this.IsClass : bool
Public ReadOnly Property IsClass As Boolean
Hodnota vlastnosti
true pokud je třída Type , falsejinak .
Implementuje
Příklady
Následující příklad vytvoří instanci typu a určuje, zda typ je třída.
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
Poznámky
Tato vlastnost se vrátí true pro třídy i delegáty.
false Vrátí hodnoty pro typy hodnot (pro struktury a výčty), i když jsou v rámečku.
Pokud aktuální Type představuje parametr typu v definici obecného typu nebo obecné metody, tato vlastnost vždy vrátí true. Pokud aktuální Type představuje vytvořený obecný typ, tato vlastnost vrátí true , pokud je definice obecného typu definice třídy; to znamená, že nedefinuje rozhraní nebo typ hodnoty.
Poznámka:
Tato vlastnost se vrátí true pro Type instance, které představují Enum a ValueType třídy. Tyto dvě třídy jsou základními typy pro výčty a typy hodnot, v uvedeném pořadí, ale nejsou výčty ani typy hodnot samotné. Další informace naleznete v tématu IsValueType a IsEnum vlastnosti.
Hodnota TypeAttributes.ClassSemanticsMask výčtu rozlišuje deklaraci typu jako třídu nebo rozhraní. Třídy i typy hodnot jsou však označeny atributem TypeAttributes.Class . Pokud načtete hodnotu vlastnosti Attributes typu a použijete TypeAttributes.ClassSemanticsMask hodnotu k určení, zda typ je třída namísto typu hodnoty, musíte také volat IsValueType vlastnost. Příklad výčtu TypeAttributes obsahuje další informace a také anexample.
Tato vlastnost je jen ke čtení.