Programa C# para verificar que un tipo específico sea una interfaz o no

La interfaz es como una clase, también puede tener métodos, propiedades, eventos, etc. como sus miembros, pero solo contiene la declaración de los miembros y la implementación de estos miembros la dará la clase que implementa la interfaz implícitamente. o explícitamente. Podemos verificar si el tipo especificado es una interfaz o no usando la propiedad IsInterface de la clase Type. Devolverá verdadero si el tipo dado es una interfaz. De lo contrario, devolverá falso. Es una propiedad de sólo lectura.

Sintaxis :

public bool IsInterface { get; }

Ejemplo 1:

C#

// C# program to check whether the 
// given type is interface or not
using System;
using System.Reflection;
  
// Declare an interface
interface myinterface
{
      
    // Method in interface
    void gfg();
}
  
class GFG{
      
// Driver code
static void Main()
{
      
    // Check the type is interface or not
    // Using the IsInterface property
    if (typeof(myinterface).IsInterface == true) 
    {
        Console.WriteLine("Yes it is Interface");
    }
    else 
    {
        Console.WriteLine("No it is not an Interface");
    }
}
}

Producción:

Yes it is Interface

Ejemplo 2:

C#

// C# program to check whether the 
// given type is interface or not
using System;
using System.Reflection;
  
// Declare an interface
interface myinterface
{
      
    // Method in interface
    void gfg();
}
  
// Declare a class
public class myclass
{
    public void myfunc(){}
}
  
// Declare a struct
public struct mystruct
{
    int a;
}
  
class GFG{
      
// Driver code
static void Main()
{
      
    // Check the type is interface or not
    // Using the IsInterface property
    Console.WriteLine(typeof(myinterface).IsInterface);
    Console.WriteLine(typeof(myclass).IsInterface);
    Console.WriteLine(typeof(mystruct).IsInterface);
}
}

Producción:

True
False
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 *