Primeramente un Saludo.
Te voy a explicar con el ejemplo anterior.
Tienes una Interfaz que se llamara IFelino,IAve.
Tienes una clase que se llaman Animal,Puma,Gato,Oso,Aguila
Como debes saber una clase, no puede heredar mas de 2 clases y aqui entran las interfaces; se puede decir q las interfaces son como clases(pero sin logica, solo tiene la mascara o q metodos tiene q tener), una clase puede heredar 1 o mas interfaces.
Mejor veamos con el ejemplo.
Código C:
Ver original//'Declaramos la Clase y las Interfacez'
//En las clases si viene logica, y la logica q pongas aqui sera para todas
//las clases que hereden de ella.
//Para cambiar la logica de un metodo de una clase padre, se usa el override
//(pero esto es otro tema).
class Animal //Clase Padre
{
void Comer()
{
//codigo
}
void Dormir()
{
//codigo
}
}
//Al crear una Interfaz, no existe nada de logica, solo se pone la Mascara
//(es decir, que es lo que quiren que Tengan las clases que hereden o
//mejor dicho Implementar)
interface IFelino
{
void Maullar();
void Ronronear();
void Correr();
}
interface IAve
{
void Volar();
}
Código C:
Ver original//Declaramos las Clases, la heredamos de la clase animal, he implementamos
//la interfaz depende de cada una.
class Puma : Animal, IFelino
//La clase Puma es hija de la clase Padre Animal, he implementa
// la Interfaz IFelino
{
public void Maullar()
{
//codigo para la clase puma
throw new NotImplementedException();
}
public void Ronronear()
{
//codigo para la clase puma
throw new NotImplementedException();
}
public void Correr()
{
//codigo para la clase puma
throw new NotImplementedException();
}
}
class Gato : Animal, IFelino
//La clase Gato es hija de la clase Padre Animal, he implementa
//la Interfaz IFelino
{
public void Maullar()
{
//codigo para la clase gato
throw new NotImplementedException();
}
public void Ronronear()
{
//codigo para la clase gato
throw new NotImplementedException();
}
public void Correr()
{
//codigo para la clase gato
throw new NotImplementedException();
}
}
class Aguila : Animal, IAve
//La clase Aguila es hija de la clase Padre Animal, he implementa
// la Interfaz IAve
{
public void Volar()
{
//codigo para la clase aguila
throw new NotImplementedException();
}
}
class Oso : Animal//La clase Oso es hija de la clase Padre Animal
{
}
Espero q te aya servido de algo,