Type.IsClass Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recebe um valor que indica se o Type é uma classe ou um delegado; ou seja, não um tipo de valor ou interface.
public:
property bool IsClass { bool get(); };
public bool IsClass { get; }
member this.IsClass : bool
Public ReadOnly Property IsClass As Boolean
Valor de Propriedade
true se for Type uma classe; caso contrário, false.
Implementações
Exemplos
O exemplo seguinte cria uma instância de um tipo e indica se o tipo é uma classe.
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
Observações
Esta propriedade retorna true tanto para as turmas como para os delegados. Devolve false os tipos de valor (para estruturas e enumerações) mesmo que estejam em caixa.
Se a corrente Type representa um parâmetro de tipo na definição de um tipo genérico ou método genérico, esta propriedade devolve truesempre . Se a corrente Type representa um tipo genérico construído, esta propriedade retorna true se a definição genérica de tipo for uma definição de classe; ou seja, não define uma interface nem um tipo de valor.
Note
Esta propriedade devolve true para Type instâncias que representam as Enum classes e ValueType . Estas duas classes são, respetivamente, os tipos base para enumerações e tipos de valor, mas não são enumerações ou tipos de valor em si. Para obter mais informações, consulte as propriedades IsValueType e IsEnum.
O TypeAttributes.ClassSemanticsMask valor de enumeração distingue uma declaração de tipo como classe ou interface. No entanto, tanto as classes como os tipos de valor são marcados com o TypeAttributes.Class atributo. Se recuperar o valor da propriedade Attributes de um tipo e usar esse TypeAttributes.ClassSemanticsMask valor para determinar se um tipo é uma classe em vez de um tipo de valor, também deve chamar a propriedade IsValueType . O exemplo para a TypeAttributes enumeração contém informações adicionais, bem como um exemplo.
Esta propriedade é somente leitura.