06 Interfaces
Centro de Educação Aberta e a Distância
Curso Licenciatura em Computação
PROGRAMAÇÃO II
Classes Abstratas e Interfaces
Prof. Regina Parente reginarosaparente@gmaill.com Agenda
Classes Abstratas
Interfaces
2
Classes Abstratas
Até agora as classes estudas sempre são utilizadas como moldes para a criação de objetos
Essas são chamadas de classes concretas
Elas estão prontas para serem utilizadas
Existem classes que não são utilizadas para criar objetos diretamente
Essas são chamadas de classes abstratas
As classes abstratas não podem ser utilizadas para criar objetos As classes abstratas são classes que marcadas com a palavra reservada abstract
3
Classes Abstratas
Uma classe abstrata pode definir membros abstratos
Os membros abstratos são aqueles que não estão definidos na classe, mas apenas em um nível hierárquico inferior
Exemplo:
4
Hierarquia da classe Personagem
Classes Abstratas
No início da declaração da classe Personagem adicionamos a palavra chave abstract, e no final do corpo da classe após o método mover() adicionamos o método exibir(), abaixo:
Exemplo:
A declaração do método exibir() está correta, ele não possui código. Este é um método abstrato, sem código. Também alteramos a classe Guerreio, adicionando a palavra chave abstract no início da declaração da classe. O restante da classe permanece igual à anterior. Ela também é abstrata porque não possui nenhum código para o método exibir() herdado de Personagem.
5
Classes Abstratas
Acrescentamos os métodos exibir() em cada um dos três tipos de personagens criados. Os métodos imprimem na tela um ícone em ascii-art representando uma imagem para cada um dos personagens.
Exemplo:
O código completo do método exibir() de cada personagem (camponês, arqueiro e mago) está no livro texto.
As Classes Personagem e Guerreiro são abstratas e seus métodos exibir() não possuem código.
6
Interfaces
Uma