Vitor Ricardo

Entendendo o uso de Classes C# – Parte 1

Para conceituação inicial, as classes são abstrações de um conjunto de objetos que possuem características similares. Nas classes, você atribui parâmetros e métodos que a mesma terá acesso, por exemplo: Uma classe chamada carro tem um parâmetro denominado Modelo e um método Acelerar, o Modelo é um atributo do carro e o método é como se fosse uma ação.

Este artigo será separado em 2 partes, veja depois:

Entendendo o uso de Classes C# – Parte 2

Vamos exemplificar o que foi descrito acima. Crie um projeto de ConsoleApp, e posteriormente, adicione um arquivo chamado GuerreiroZ.cs, neste arquivo copie o seguinte código:

public class GuerreiroZ
{
    public string Nome;
    public bool ConsegueVoar;

    //Usado para Instanciar a classe com parâmetros preenchidos
    public GuerreiroZ(string nome, bool consegueVoar)
    {
        Nome = nome;
        ConsegueVoar = consegueVoar;
    }

    //Usado para Instanciar a classe vazia
    public GuerreiroZ()
    {

    }

    /// <summary>
    /// Método que usado para soltar um poder
    /// </summary>
    public void SoltarPoder()
    {
        Console.WriteLine($"{Nome} soltou um poder.");
    }


    /// <summary>
    /// Método usado para voar
    /// </summary>
    public void Voar()
    {
        if (ConsegueVoar)
            Console.WriteLine($"{Nome} consegue voar.");
        else
            Console.WriteLine($"{Nome} não consegue voar.");

    }
}

Agora no arquivo Program.cs, adicione o seguinte código:

static void Main(string[] args)
{
    //Exemplo de instanciar uma classe sem inicialização de parâmetros
    GuerreiroZ Gohan = new GuerreiroZ();
    Gohan.Nome = "Gohan";
    Gohan.ConsegueVoar = false;

    //Exemplo de instanciar uma com inicialização de parâmetros, mas nem todos obrigatórios
    GuerreiroZ Goku = new GuerreiroZ()
    {
        Nome = "Goku",
        ConsegueVoar = true
    };

    //Exemplo de instanciar uma classe com inicialização de parâmetros obrigátorios
    GuerreiroZ Vegeta = new GuerreiroZ("Vegeta", true);

    Console.WriteLine($"Nome 1: {Gohan.Nome}, Nome 2: {Goku.Nome}, Nome 3: {Vegeta.Nome}");
    Gohan.SoltarPoder();
    Goku.Voar();
    Gohan.Voar();
    Gohan.ConsegueVoar = true;
    Gohan.Voar();
    Vegeta.Nome = "Majin Vegeta";
    Vegeta.SoltarPoder();

    Console.ReadKey();
}

//Ouputs:
//Nome 1: Gohan, Nome 2: Goku, Nome 3: Vegeta
//Gohan soltou um poder.
//Goku consegue voar.
//Gohan não consegue voar.
//Gohan consegue voar.
//Majin Vegeta soltou um poder.

Nó código acima, instanciamos 3 classes do GuerreiroZ de formas e valores diferentes. Alteramos valores e usamos métodos delas.

Conclusão

O uso de classe permite a abstração de um determinado conjunto de objetos e neste artigo, vimos como se construir uma classe, instanciar ela, modificar valores e usar seus métodos.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *