Programa C# para demostrar la implementación de la interfaz con herencia multinivel

La herencia multinivel es el proceso de extender las clases principales a las clases secundarias en un nivel. En este tipo de herencia, una clase secundaria heredará una clase principal y, además, la clase secundaria también actuará como clase principal para otra clase que se cree. Por ejemplo, tres clases llamadas P, Q y R, donde la clase R se deriva de la clase Q y la clase Q se deriva de la clase P.

Sintaxis :

class P : Q
{
    // Methods
}

La interfaz especifica qué debe hacer una clase y no cómo. Es el modelo de la clase. Similar a una clase, la interfaz también tiene métodos, eventos, variables, etc. Pero solo contiene la declaración de los miembros. La implementación de los miembros de la interfaz estará dada por la clase que implementa la interfaz implícita o explícitamente. La principal ventaja de la interfaz se utiliza para lograr el 100% de abstracción.

Sintaxis:

interface interface_name
{
    //Method Declaration   
}

Después de comprender la herencia multinivel y la interfaz, ahora implementamos la interfaz con la herencia multinivel. Entonces, para esto, podemos extender la clase principal a la interfaz.

class GFG1 : interface1
{
    // Method definition
    public void MyMethod()
    {
        Console.WriteLine("Parent is called");
    }
}

Acercarse

  1. Cree una interfaz llamada «interfaz1» con el método llamado «MyMethod».
  2. Cree una clase principal denominada ‘GFG1″ mediante la implementación de una interfaz.
  3. Cree la primera clase secundaria denominada «GFG2» extendiendo la clase principal.
  4. Cree una segunda clase secundaria denominada «GFG3» extendiendo la primera clase secundaria.
  5. Cree un objeto en el método principal.
  6. Accede a los métodos presentes en todas las clases usando el objeto.

Ejemplo:

C#

// C# program to implement interface 
// with multi-level inheritance
using System;
  
// Interface
interface interface1
{
      
    // Method Declaration
    void MyMethod();
}
  
// Parent class
class GFG1 : interface1
{
      
    // Method definition
    public void MyMethod()
    {
        Console.WriteLine("Hey! This is Parent");
    }
}
  
// First child extends parent class
class GFG2 : GFG1
{
      
    // Method definition
    public void Method1()
    {
        Console.WriteLine("Hey! This is first child");
    }
}
  
// Second child extends first child
class GFG3 : GFG2
{
      
    // Method definition
    public void Method2()
    {
        Console.WriteLine("Hey! This is second child");
    }
}
  
class Geeks{
      
public static void Main(String[] args)
{
      
    // Create an object for the second child
    GFG3 obj = new GFG3();
      
    // Call the methods of patent,
    // first and second child classes
    obj.MyMethod();
    obj.Method1();
    obj.Method2();
}
}

Producción:

Hey! This is Parent
Hey! This is first child
Hey! This is second child

Publicación traducida automáticamente

Artículo escrito por bhanusivanagulug 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 *