Classe abstrata

998 palavras 4 páginas
Classes Abstratas
O conceito de generalização na POO(Programação Orientada a Objetos) significa que um objeto encapsula comportamentos e estados para uma categoria de objetos.
Para ilustrar vamos pensar em algumas figuras geométricas conforme mostra a figura abaixo: |
O objeto genérico neste exemplo é figura geométrica que iremos definir como uma classe abstrata.
Muitas formas geométricas possuem área, perímetro e cor.
O conceito de especificação na POO significa que um objeto pode herdar o comportamento e o estado comum de um objeto genérico, porém cada objeto precisa definir seu próprio estado e comportamento.
No exemplo cada forma geométrica tem sua fórmula particular para calcular a área e o perímetro.
A herança permite a reutilização de código.
Para o exemplo como sabemos que todas as formas possuem cor deveríamos definir um atributo cor em cada forma. Correto ?
Não. Incorreto.
Seria melhor criar uma classe com um atributo cor e fazer com que as demais formas especializadas herdassem esse atributo cor.
Neste caso podemos definir um classe base Forma como uma classe abstrata e uma classe derivada para cada forma especifica que desejamos tratar.
Na vida real nós nunca calculamos a área e o perímetro de uma figura geométrica; para fazer isso você precisa saber qual o tipo de figura geométrica (quadrado, triângulo, círculo, etc.) para implementar o cálculo usando a fórmula apropriada.
Para calcular a área podemos definir métodos abstratos na classe abstrata e dessa forma obrigar as classes que herdam da classe abstrata a implementar esses métodos. Com isso teremos certeza de que esses métodos foram implementados.
Definindo então os métodos CalcularArea() e CalcularPerimetro() como abstratos e assim estamos forçando as classes que derivam da classe base Forma, que também é abstrata, a definir o comportamento dos métodos implementando-os.
Agora que eu apresentei o cenário vamos definir os conceitos relacionados a classes abstratas e métodos

Relacionados

  • Classes abstratas
    2805 palavras | 12 páginas
  • classes abstratas
    294 palavras | 2 páginas
  • Classes Abstratas Java
    2485 palavras | 10 páginas
  • Classes abstratas java
    1268 palavras | 6 páginas
  • programacao classes abstratas
    374 palavras | 2 páginas
  • Conexão MySQL e Java - Exemplo de Classe Abstrata
    408 palavras | 2 páginas
  • 7
    910 palavras | 4 páginas
  • Programação Orientada a Objetos - Abstração de classes
    306 palavras | 2 páginas
  • Java
    867 palavras | 4 páginas
  • atividade estruturada de S.I
    653 palavras | 3 páginas