SlideShare uma empresa Scribd logo
1 de 10
Programação III
I n t e rf ac e s e C l a s s e s A b s t r ac t a
Msc. Augusto Antunes Francisco
I n t e rf ac e s
Em Java, interfaces são um tipo especial de
referência, parecido com classes . Elas servem
para definir contratos com que as classes
devem implementar.
C a r a c t e rí st i c as
Métodos abstratos: Interfaces consistem
principalmente em métodos abstratos, que são
declarados sem uma implementação específica. As
classes que implementam uma interface devem
fornecer implementações concretas para esses
métodos.
Sem atributos ou implementações:
Diferentemente das classes abstratas, as interfaces
não podem conter atributos ou métodos com
implementações. Eles fornecem apenas a
C a r a c t e rí st i c as
Pode herdar várias interfaces: Uma classe pode
implementar várias interfaces. Isso permite que uma
classe forneça implementações para vários
conjuntos de comportamentos especificados para
diferentes interfaces.
Não pode ser instanciada diretamente: Assim
como classes abstratas, interfaces não podem ser
instanciadas diretamente. Elas são projetadas para
serem rompidas por classes concretas.
C a r a c t e rí st i c as
Promova a flexibilidade e a reutilização de
código: As interfaces fornecem uma maneira de
definir os contratos que as classes devem seguir.
Isso promove flexibilidade no design do sistema e
facilita a reutilização de código, uma vez que
classes diferentes podem implementar a mesma
interface, tornando o código mais modular e fácil de
entender.
C l a s s e s A b s t ra c t as
Classes Abstratas são classes que não podem
ser instanciadas diretamente. Em vez disso, são
destinadas a serem superclasses de outras
classes mais concretas.
Elas fornecem uma maneira de definir uma
estrutura comum para um grupo de classes
relacionadas, mas não fornecem
implementações completas para todos os
métodos.
C a r a c t e ri st i c as
 Não podem ser instanciadas: Uma classe
abstrata não pode ser utilizada para criar objetos
diretamente. Em vez disso, ela foi projetada para
ser subclasse de outras classes mais específicas
que fornecem implementações concretas para
seus métodos.
 Podem conter métodos abstratos: Classes
abstratas frequentes
C a r a c t e ri st i c as
 Podem ter métodos concretos: Além de
métodos abstratos, as classes abstratas também
podem conter métodos c
 Podem ter atributos: Assim como métodos,
classes
 Podem herdar de outras classes ou
interfaces: As classes abstratas podem ampliar
outras classes abstratas e, ao contrário das
interfaces
C a r a c t e ri st i c as
Podem ser usadas para definir uma interface
comum: Classes abstratas são frequentemente
usadas para definir uma interface comum para um
conjunto de classes relacionadas. Isso permite que
as subclasses forneçam implementações
específicas, garantindo, ao mesmo
Promovem reutilização de código: Ao fornecer
uma estrutura
B I b l i o gr af i a
JONES, Meilir – Fundamentos do Desenho Orientado a
Objecto com UML . Pearson, São Paulo
CORNEL, Gary – Core Java : Fundamentos, 8 Ed. Pearson
DEITEL, P. DEITEL H - Java Como programar. Pearson
Prentice-hall, 10ª Edição São Paulo 2017
BARNERS, DJ - Programação Orientada a Objecto com Java
Pearson Prentice Hall, , São Paulo 2004

Mais conteúdo relacionado

Semelhante a Aula 04 - Classe Abstrata e Interface.pptx

Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Andre Nascimento
 
Programação Orientado a Objetos - Sessao 4.pptx
Programação Orientado a Objetos - Sessao 4.pptxProgramação Orientado a Objetos - Sessao 4.pptx
Programação Orientado a Objetos - Sessao 4.pptxBernaldinoFernandes
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaMoises Omena
 
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosApresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosmauroladeiafilho
 
Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classeSuissa
 
Orientação a objetos com PHP
Orientação a objetos com PHPOrientação a objetos com PHP
Orientação a objetos com PHPLeonardo Soares
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introduçãoelliando dias
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoVinícius de Paula
 
Aprendendo C# do zero
Aprendendo C# do zeroAprendendo C# do zero
Aprendendo C# do zeroManawydan
 
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca [Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca Loiane Groner
 

Semelhante a Aula 04 - Classe Abstrata e Interface.pptx (16)

Java Básico
Java BásicoJava Básico
Java Básico
 
Relatório da uml
Relatório da umlRelatório da uml
Relatório da uml
 
Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#Apostila de Introdução a POO com C#
Apostila de Introdução a POO com C#
 
Programação Orientado a Objetos - Sessao 4.pptx
Programação Orientado a Objetos - Sessao 4.pptxProgramação Orientado a Objetos - Sessao 4.pptx
Programação Orientado a Objetos - Sessao 4.pptx
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
 
Herança.pptx
Herança.pptxHerança.pptx
Herança.pptx
 
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosApresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplos
 
Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classe
 
Orientação a objetos com PHP
Orientação a objetos com PHPOrientação a objetos com PHP
Orientação a objetos com PHP
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
 
Final e aastract
Final e aastractFinal e aastract
Final e aastract
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Aprendendo C# do zero
Aprendendo C# do zeroAprendendo C# do zero
Aprendendo C# do zero
 
Interface
InterfaceInterface
Interface
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
 
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca [Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca
[Curso Java Basico - Orientacao a Objetos] Aula 46: Interface e heranca
 

Aula 04 - Classe Abstrata e Interface.pptx

  • 1. Programação III I n t e rf ac e s e C l a s s e s A b s t r ac t a Msc. Augusto Antunes Francisco
  • 2. I n t e rf ac e s Em Java, interfaces são um tipo especial de referência, parecido com classes . Elas servem para definir contratos com que as classes devem implementar.
  • 3. C a r a c t e rí st i c as Métodos abstratos: Interfaces consistem principalmente em métodos abstratos, que são declarados sem uma implementação específica. As classes que implementam uma interface devem fornecer implementações concretas para esses métodos. Sem atributos ou implementações: Diferentemente das classes abstratas, as interfaces não podem conter atributos ou métodos com implementações. Eles fornecem apenas a
  • 4. C a r a c t e rí st i c as Pode herdar várias interfaces: Uma classe pode implementar várias interfaces. Isso permite que uma classe forneça implementações para vários conjuntos de comportamentos especificados para diferentes interfaces. Não pode ser instanciada diretamente: Assim como classes abstratas, interfaces não podem ser instanciadas diretamente. Elas são projetadas para serem rompidas por classes concretas.
  • 5. C a r a c t e rí st i c as Promova a flexibilidade e a reutilização de código: As interfaces fornecem uma maneira de definir os contratos que as classes devem seguir. Isso promove flexibilidade no design do sistema e facilita a reutilização de código, uma vez que classes diferentes podem implementar a mesma interface, tornando o código mais modular e fácil de entender.
  • 6. C l a s s e s A b s t ra c t as Classes Abstratas são classes que não podem ser instanciadas diretamente. Em vez disso, são destinadas a serem superclasses de outras classes mais concretas. Elas fornecem uma maneira de definir uma estrutura comum para um grupo de classes relacionadas, mas não fornecem implementações completas para todos os métodos.
  • 7. C a r a c t e ri st i c as  Não podem ser instanciadas: Uma classe abstrata não pode ser utilizada para criar objetos diretamente. Em vez disso, ela foi projetada para ser subclasse de outras classes mais específicas que fornecem implementações concretas para seus métodos.  Podem conter métodos abstratos: Classes abstratas frequentes
  • 8. C a r a c t e ri st i c as  Podem ter métodos concretos: Além de métodos abstratos, as classes abstratas também podem conter métodos c  Podem ter atributos: Assim como métodos, classes  Podem herdar de outras classes ou interfaces: As classes abstratas podem ampliar outras classes abstratas e, ao contrário das interfaces
  • 9. C a r a c t e ri st i c as Podem ser usadas para definir uma interface comum: Classes abstratas são frequentemente usadas para definir uma interface comum para um conjunto de classes relacionadas. Isso permite que as subclasses forneçam implementações específicas, garantindo, ao mesmo Promovem reutilização de código: Ao fornecer uma estrutura
  • 10. B I b l i o gr af i a JONES, Meilir – Fundamentos do Desenho Orientado a Objecto com UML . Pearson, São Paulo CORNEL, Gary – Core Java : Fundamentos, 8 Ed. Pearson DEITEL, P. DEITEL H - Java Como programar. Pearson Prentice-hall, 10ª Edição São Paulo 2017 BARNERS, DJ - Programação Orientada a Objecto com Java Pearson Prentice Hall, , São Paulo 2004