Sdílet prostřednictvím


Type.IsClass Vlastnost

Definice

Získá hodnotu označující, zda Type je třída nebo delegát; to znamená, že 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 Type pokud je třída, jinak falsehodnota .

Implementuje

Příklady

Následující příklad vytvoří instanci typu a označuje, zda je typ třída.

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);
        }
    }
}
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 vrací true pro třídy i delegáty. Vrátí false hodnotu pro typy hodnot (pro struktury a výčty), i když jsou v rámečku.

Pokud current Type představuje parametr typu v definici obecného typu nebo obecné metody, tato vlastnost vždy vrátí true. Pokud current Type představuje konstruovaný obecný typ, vrátí true tato vlastnost, pokud je definice obecného typu definice třídy; to znamená, že nedefinuje rozhraní nebo typ hodnoty.

Poznámka

Tato vlastnost vrací true pro Type instance, které představují Enum třídy a ValueType . Tyto dvě třídy jsou základními typy pro výčty a hodnotové typy, ale nejsou to samotné výčty ani hodnotové typy. Pokud chcete získat další informace, podívejte se na vlastnosti IsValueType a IsEnum.

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 hodnotu TypeAttributes.ClassSemanticsMask k určení, zda je typ třída místo hodnotového typu, musíte také volat IsValueType vlastnost . Příklad pro TypeAttributes výčet obsahuje další informace, stejně jako anexample.

Tato vlastnost je jen ke čtení.

Platí pro

Viz také