Type.IsClass Propriedade
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém 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
true
se o Type for uma classe; caso contrário, false
.
O exemplo a seguir cria uma instância de um tipo e indica se o tipo é uma 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
Essa propriedade retorna true
para classes, bem como delegados. Ele retorna false
para tipos de valor (para estruturas e enumerações), mesmo que estejam em caixa.
Caso o Type atual represente um parâmetro de tipo na definição de um tipo genérico ou um método genérico, esta propriedade sempre retorna true
. Se o atual Type representar um tipo genérico construído, essa propriedade retornará true
se a definição de tipo genérico for uma definição de classe; ou seja, ela não definirá uma interface ou um tipo de valor.
Nota
Essa propriedade retorna true
para Type
instâncias que representam as Enum classes e ValueType . Essas duas classes são os tipos base para enumerações e tipos de valor, respectivamente, mas não são enumerações ou tipos de valor em si. Para obter mais informações, confira as propriedades IsValueType e IsEnum.
O TypeAttributes.ClassSemanticsMask valor de enumeração distingue uma declaração de tipo como classe ou interface. No entanto, classes e tipos de valor são marcados com o TypeAttributes.Class atributo . Se você recuperar o valor da propriedade Attributes de um tipo e usar o TypeAttributes.ClassSemanticsMask valor para determinar se um tipo é uma classe em vez de um tipo de valor, você também deve chamar a IsValueType propriedade . O exemplo para a TypeAttributes enumeração contém informações adicionais, bem como anexample.
Esta propriedade é somente para leitura.
Produto | Versões |
---|---|
.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 |
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: