Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Classes abstratas com metodos virtuais void

Seria correto ou uma boa pratica nas classes abstratas que contenha metodos virtuais os mesmos ficarem sem lógica? Exemplo :

abstract class Funcionario
public virtual void AumentarSalario()
        {
            Salario *= 1.1;  // com lógica
        }

abstract class Funcionario
public virtual void AumentarSalario()
        {
             // sem lógica poís será sobreescrito (Parece uma interface)
        }

Obrigado!

1 resposta
solução!

Não é errado fazer isso, mas no o ideal seria obrigar que o método seja implementado. Ao invés de ser virtual, pode transforma-lo em abstract ou como você mesmo falou, criar uma interface.

Caso existam classes que herdem de Funcionario e não implementem o AumentarSalario (depende de casos de uso próprio) nesse caso faria sentido não ter implementação e ser virtual.