Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida no Ex. 5 da Aula 3 - Classes Abstratas

Podem compartilhar um código para entender a implementação. Pois me pareceu um pouco vago, implementei em meu código e não obtive sucesso...grato

3 respostas

Amigo, Agora em diante as coisas que vão aparecer no curso fazem uma confusão mesmo, o que é completamente normal para o entendimento de outros assuntos futuros. Quando você declara uma classe Abstrata

public class abstract Funcionario {
}

Veja bem o que aconteçe, na classe principal aonde tem o método main você não pode mais por exemplo, chegar e passar a seguinte instrução:

Funcionario f1 = new Funcionario();

Por quê? a resposta é simples. Quando você torna uma classe abstrata ela exige que você crie um objeto especificando exatamente de qual tipo é esse objeto ou funcionário do nosso código.

Em relação aos métodos abstract é parecido, em todas as classes que você usar o extend da classe pai e nessa classe pai tiver um método abstrato você é obrigado a implementar esse método. por exemplo:

public class Funcionario {

    public abstract double getBonunsFuncionario();

}

Se eu criar uma outra classe por exemplo:

public class Desenvolvedor extends Funcionario {

}

e não implementar o método getBonus da classe funcionário não compila. Essa é a arte de abstração no java ;)

solução!

Entendi perfeitamente essa parte...só queria entender onde tinha, mas encontrei também...rs... desde já agradeço sua atenção.

Obrigado. Se puder selecionar minha resposta como solucionada, agradeço.