Type.IsClass Propriété

Définition

Obtient une valeur indiquant si le Type est une classe ou un délégué, c'est-à-dire ni un type valeur ni une interface.

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

Valeur de propriété

true si Type est une classe ; sinon, false.

Implémente

Exemples

L’exemple suivant crée une instance d’un type et indique si le type est une classe.

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

Remarques

Cette propriété retourne true pour les classes ainsi que pour les délégués. Il retourne false pour les types valeur (pour les structures et les énumérations) même s’ils sont encadrés.

Si le actuel Type représente un paramètre de type dans la définition d’un type générique ou d’une méthode générique, cette propriété retourne truetoujours . Si le courant Type représente un type générique construit, cette propriété retourne true si la définition de type générique est une définition de classe ; autrement dit, elle ne définit pas d’interface ou de type valeur.

Notes

Cette propriété retourne true pour Type les instances qui représentent les Enum classes et ValueType . Ces deux classes sont les types de base des énumérations et des types valeur, respectivement, mais elles ne sont pas des énumérations ou des types de valeurs proprement dits. Pour plus d’informations, consultez les propriétés IsValueType et IsEnum.

La TypeAttributes.ClassSemanticsMask valeur d’énumération distingue une déclaration de type en tant que classe ou interface. Toutefois, les classes et les types de valeurs sont marqués avec l’attribut TypeAttributes.Class . Si vous récupérez la valeur de la propriété Attributes d’un type et utilisez la TypeAttributes.ClassSemanticsMask valeur pour déterminer si un type est une classe au lieu d’un type valeur, vous devez également appeler la IsValueType propriété . L’exemple de l’énumération TypeAttributes contient des informations supplémentaires ainsi qu’un exemple.

Cette propriété est en lecture seule.

S’applique à

Voir aussi