1
resposta

Qual a necessidade do uso de herança, tendo em vista o exemplo do vídeo da aula?

Basicamente: para que usar herança se pelo o que foi mostrado na aula, ainda é preciso digitar novamente os atributos da classe mãe?

Edit: Acho que compreendi a lógica depois de tirar um tempo para contemplar.

class Diretor(
    nome: String,
    cpf: String,
    salario: Double,
    val senha:Int,
    val prl:Double
):Funcionario(nome =nome, cpf =cpf, salario =salario)

Basicamente as partes sem o val do Diretor são apenas atributos normais que serão passados para a chamada necessária do construtor da classe mãe, enquanto os atributos com o val/var são os atributos únicos da classe filha. Seria isso?

1 resposta

Fala Rafael, tudo certo?

É isso mesmo, a classe filha herda os atributos e comportamentos da classe mãe, o que aumenta a semântica do código orientado a objetos, bem como é uma maneira bastante elegante reaproveitamento de código! Mais pra frente fica mais claro os motivos principais por trás da herança, mas nesse primeiro momento é legal que saber que: A herança facilita a manutenção do código, pois todos os comportamentos modificados na classe mãe surtem efeito nas classes filhas, a herança deixa o código mais semântico, faz sentido pensar em "todo Diretor é um Funcionario", dentre outros benefícios que vão ficando mais claros com o tempo quando entrar o Polimorfismo também!

Um grande abraço e bons estudos!