Olá pessoal, neste artigo veremos um exemplo prático com o uso de Interfaces. Acompanhem:
Crie um projeto, do tipo Console Application, dando a ele o nome ExemploInterfaces. Agora vá à Solution Explorer e adicione uma classe ao projeto, dando a ela o nome Funcionario.
Nesta classe iremos crie uma interface e uma classe, como no código a seguir:
public class Funcionario
{
interface IReajuste
{
double Reajuste();
}
public class ReajusteFuncionario : IReajuste
{
//Propriedades públicas da minha classe
public string nomeFuncionario;
public double salarioFuncionario;
//Implementação do método Reajuste, da interface IReajuste
public double Reajuste()
{
salarioFuncionario = salarioFuncionario * 1.50;
return salarioFuncionario;
}
}
}
Percebam que minha interface tinha um método em seu escopo. Usei este método em minha classe, que herda dessa interface. Assim é estabelecido um “contrato” entre a interface, que definiu o método Reajuste() e a classe, que herdou sua implementação usando seu método criado anteriormente. Simples né?
Agora vá ao arquivo Program.cs e, dentro do método principal (Main), faça o seguinte código:
static void Main(string[] args)
{
//Instancio a classe ReajusteFuncionario, que herda da interface IReajuste
Funcionario.ReajusteFuncionario objReajusteFuncionario = new Funcionario.ReajusteFuncionario();
//Atribuo valores fictícios para o nome e salário
objReajusteFuncionario.nomeFuncionario = "Felipe Souza";
objReajusteFuncionario.salarioFuncionario = 2500.00;
//Escrevo os dados em tela
Console.WriteLine("Antes do Reajuste: ");
Console.WriteLine("\nNome: " + objReajusteFuncionario.nomeFuncionario);
Console.WriteLine("\nSalário: R$ " + objReajusteFuncionario.salarioFuncionario);
//Chamo o método Reajuste, implementado em minha classe, criado em minha interface
objReajusteFuncionario.Reajuste();
Console.WriteLine("\nDepois do Reajuste: ");
Console.WriteLine("\nNome: " + objReajusteFuncionario.nomeFuncionario);
Console.WriteLine("\nSalário: R$ " + objReajusteFuncionario.salarioFuncionario);
//Paro a execução até que alguma tecla seja pressionada
Console.ReadKey();
}
Aperte F5 para executar a aplicação e veja o resultado:
Assim o método foi implementado, garantido pelo “contrato” entre a interface e a classe.
Assim finalizo o artigo. Muito obrigado a todos
Um abraço, e até o próximo artigo.
Wellington Balbo de Camargo