quinta-feira, 14 de março de 2013

Aula 20 12/12/12




Classes Abstratas e Métodos Abstratos


Nesta aula o professor iniciou a matéria sobre “Classes Abstratas”, pelo o que eu entendi sobre a explicação do professor é que serve para que não possamos instanciar um objeto qualquer da classe,  que geralmente são utilizadas pela classes mãe. O mesmo também utilizou o exemplo da apostila Caelum, página 127 sobre as classe Gerente que herdam da classe Funcionário, ou seja utilizando a classe Abstrata você não ira conseguir instanciar um “Funcionário”, isto porque as classes filhas também serão “Funcionários”. Apenas para herdar os atributos da classe principal e não poder instanciar esta classe. Outro fator importante na orientação a objetos de forma objetiva, uma classe abstrata serve apenas como modelo para uma classe concreta. Além disso! Outro fato importante de classes abstratas é que podem ou não métodos abstratos, que tem a mesma definição da assinatura de método encontrada em "interfaces", podendo ou não implementar um método. Nas classes abstratas são obrigatório a implementação de uma classe concreta.

Exemplo: 


abstract class Funcionario {

  protected String nome;
  protected String cpf;
  protected double salario;

  public double getBonificacao() {
    return this.salario * 1.2;
  }

  // outros métodos aqui

}
         
Com o método abstrato é utilizado para obrigar as classes filha a terem o método abstrato herdado da classe mãe, sendo assim você da classe mão a obrigação de implementar o método abstrato, caso não seja implementado o método o seu código não ira compilar. 










Nenhum comentário:

Postar um comentário