Programa C# para verificar que una clase específica sea una clase abstracta o no

La abstracción es el proceso para ocultar los detalles internos y mostrar solo la funcionalidad. La palabra clave abstracta se usa antes de la clase o el método para declarar la clase o el método como abstracto. En este artículo, aprenderemos cómo verificar que una clase específica sea una clase abstracta o no. Para realizar esta tarea usamos la propiedad IsAbstract de la clase Type. Esta propiedad se usa para verificar si el Tipo dado (es decir, el nombre de la clase) es abstracto y debe anularse o no. Devolverá verdadero si el Tipo especificado (es decir, el nombre de la clase) es abstracto. De lo contrario, devuelve falso.

Sintaxis :

public bool IsAbstract { get; }

Ejemplo 1:

C#

// C# program to check a specified class is
// an abstract class or not
using System;
using System.Reflection;
  
// Declare an abstract class named Geeks
abstract class Geeks 
{
      
    // Abstract method
    public abstract void geeksmethod();
}
  
class GFG{
      
static void Main()
{
      
    // Get the type of class by using typeof() function
    // Check the class is abstract or not by using
    // IsAbstract property
    if (typeof(Geeks).IsAbstract == true) 
    {
        Console.WriteLine("This is abstract");
    }
    else 
    {
        Console.WriteLine("This is not abstract");
    }
}
}

Producción:

This is abstract

Ejemplo 2:

C#

// C# program to check a specified class is
// an abstract class or not
using System;
using System.Reflection;
  
// Declare an abstract class named Geeks
abstract class Geeks1 
{
      
    // Abstract method
    public abstract void geeksmethod();
}
  
// Declare a class named Geeks2
class Geeks2
{
      
    // Method 
    public void gfgfunc()
    {
        Console.WriteLine("This is method");
    }
}
  
// Declare a class named Geeks3
// It implement abstract class
class Geeks3:Geeks1 
{ 
      
    // Method 
    public override void geeksmethod()
    {
        Console.WriteLine("This is method");
    }
}
  
class GFG{
  
// Driver code
static void Main()
{
  
    // Get the type of class by using typeof() function
    // Check the class is abstract or not by using
    // IsAbstract property
    bool res1 = typeof(Geeks1).IsAbstract;
    bool res2 = typeof(Geeks2).IsAbstract;
    bool res3 = typeof(Geeks3).IsAbstract;
      
    Console.WriteLine("Is Geeks1 class is abstract class?" + res1);
    Console.WriteLine("Is Geeks2 class is abstract class?" + res2);
    Console.WriteLine("Is Geeks3 class is abstract class?" + res3);
}
}

Producción:

Is Geeks1 class is abstract class?True
Is Geeks2 class is abstract class?False
Is Geeks3 class is abstract class?False

Publicación traducida automáticamente

Artículo escrito por 171fa07058 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *