Sobes.tech
Junior — Middle

Pode explicar o que se entende por abstração em programação?

sobes.tech IA

Resposta da IA

A abstração em programação é o processo de destacar as características essenciais de um objeto ou sistema e ocultar detalhes de implementação que não são importantes para o contexto atual. Isso permite trabalhar com objetos a um nível mais alto, sem entrar em detalhes complexos.

Em C#, a abstração é implementada através de classes abstratas e interfaces. Por exemplo, pode-se definir uma classe abstrata com métodos sem implementação, e classes concretas irão implementar esses métodos à sua maneira:

abstract class Animal
{
    public abstract void MakeSound();
}

class Dog : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("Au-au");
    }
}

class Cat : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("Miau");
    }
}

Aqui, o usuário interage com a classe abstrata Animal, sem se preocupar com os detalhes da implementação dos sons dos animais.