Lire en anglais

Partager via


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.

C#
public bool IsClass { get; }

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.

C#
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);
        }
    }
}

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 à

Produit Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Voir aussi