Reconhecer uma classe e adaptar o metodo para ela

Galera estou com uma duvida, eu possuo uma classe empregado onde ela é a classe mãe para as classes TrabalhadorComissionado, Chefe e TrabalhadorPecaProduzida.

A classe empregado é abstrata e possui o método abstrato mostrarTudo() que é aplicado de maneira diferente para cada subclasse. Minha duvida é a seguinte, o método mostrarTudo é diferente para cada subclasse, mas a diferença é quase mínima, então gostaria de criar uma classe nova que substituisse esse método, mas como eu faria para mostrar o método de acordo com o tipo de classe que o esteja chamando?

Exemplo:
na classe Chefe o método mostrarTudo() só mostraria o salário e o nome, enqnto na classe TrabalhadorComissionado o método mostrarTudo mostra o nome, o salario e o numero de peças vendidas.

Isso é possivel?

Ao criar as classes TrabalhadorComissionado, Chefe e TrabalhadorPecaProduzida - que, acredito sejam classes concretas - você será obrigado a implementar o método mostrarTudo() em cada uma delas de acordo com necessidade de cada classe.

@Ms1403, a sua tarefa está bem distribuída e é bem fácil de resolvê-la seguindo o raciocínio de herança proposto no seu trabalho que atingirá o seu objetivo.

Então basicamente o melhor jeito de resolver essa questão é deixar do jeito que está? ou seja cada classe com seu próprio método mostrarTudo()?

Sim, cada classe irá mostrar (implementar) o seu próprio conteúdo diferenciado quando chamar o método mostrarTudo().

1 curtida