SlideShare uma empresa Scribd logo
1 de 37
SEMANA DE ESTUDO
THIAGO FORTES
INTRODUÇÃO
• Apresentar a série de conteúdos listados para a semana.
SUMÁRIO
- Git e Github;
- Controle de acessos (public, private, protected);
- Statics methods;
- POO;
- Herança;
- Polimorfismo;
- Classes Abstratas;
- Interface;
GIT E GITHUB
GIT
• É um sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas
pode ser usado para registrar o histórico de edições de
qualquer tipo de arquivo.
GITHUB
• É uma plataforma de hospedagem de código-fonte com
controle de versão usando o Git. Ele permite que
desenvolvedores, utilitários ou qualquer usuário
cadastrado na plataforma contribuam em projetos
privados e/ou Open Source de qualquer lugar do mundo.
FLUXO DE TRABALHO
• Working Directory
• Que contém os arquivos vigentes.
• Index
• Funciona como uma área temporária.
• Head
• Essa aponta para o ultimo commit que você fizer.
COMANDOS
• Init
• Cria um repositório.
• Clone
• Clona o seu projeto
• Add
• Adiciona arquivos ao index.
• Commit
• Grava atualizações de código.
COMANDOS
• Push
• Atualizar referências remotas junto com objetos associados
• Pull
• Buscar e integrar com outro repositório ou uma filial loca
• Branch
• Lista, cria, ou deleta branchs
• Ssh
• É uma forma de passar o seu projeto de modo seguro para nuvem.
COMANDOS
• Fork
• Utilizado para pegar um clone do projeto de outra
conta para a sua.
• Pull Request
• Como voce não poderá comitar a implementação diretamente no
projeto, o pull request manda uma submissão da solução que você
desenvolveu.
CONTROLE DE ACESSOS
PUBLIC, PRIVATE, PROTECTED
PUBLIC
• Todos tem acesso aos seus atributos.
PRIVATE
• Única classe que tem acesso aos atributo é a própria
classe que o define.
PROTECTED
• Se uma classe (mesmo que esteja fora do pacote) estende
da classe com o atributo protected, ela terá acesso a ele.
Então o acesso é por pacote e por herança.
MÉTODOS ESTÁTICOS
O QUE SÃO?
• São métodos que não precisam de um objeto, podem ser
chamados sem necessidade de instanciar a classe.
• Um método estático só pode conter variáveis estáticas e
só pode acessar outros itens estáticos.
• Os membros estáticos são alocados na área do heap de
alta frequência da memória.
EXEMPLO DE UTILIZAÇÃO
• Uma classe estática pode ser usada como um contêiner
conveniente para conjuntos de métodos que operam
apenas em parâmetros de entrada e não precisam obter
ou definir campos de instância internos.
• Como exemplo o Math.random();
• Ele é chamado sem a instanciação da classe Math.
PROGRAMAÇÃO
ORIENTADO A OBJETO
POO
O QUE É?
• É um modo de projeto em que há diversas classes que se
relacionam juntamente de um Main, que é o corpo do
projeto, a parte executável.
CLASSE
• São receitas de um objeto, aonde têm características e
comportamentos, permitindo assim armazenar
propriedades e métodos dentro dela.
• Exemplo:
CLASSE PESSOA
VANTAGENS
• Utilização de um único padrão conceitual durante todo o
processo de criação de software;
• Ciclo de vida mais longo para os sistemas;
• Possibilidade de se construir sistema muito mais
complexos, pela incorporação de funções prontas.
HERANÇA
O QUE É?
• É um princípio que permite criação de novas classes a
partir de outras previamente criadas.
• Essas classes são chamadas de subclasses.
• Uma subclasse herda métodos e atributos de sua
superclasse.
• É o mecanismo pelo qual uma classe pode estender outra
aproveitando seus comportamentos (métodos) e estados
possíveis (atributos);
• Um dos benefícios é que se pode evitar códigos
duplicados os agrupando em uma única classe.
EXEMPLO
• Um objeto de uma subclasse é um tipo de objeto da
superclasse;
• Objeto "poupança", é uma subclasse de "Conta";
• Portanto, "poupança" é um tipo de Conta;
• Também pode ter o tipo de conta "Corrente" que é outra
subclasse;
HERANÇA NÃO É...
• Se um objeto de uma subclasse não possui todos os
atributos e operações da superclasse, ela não pode ser
uma subclasse.
• O Java não permite que uma classe estenda mais de uma
classe.
• Porém ele permite que interfaces estendam outras
interfaces.
• Existem heranças múltiplas de interfaces, mas não de
classes.
POLIMORFISMO
O QUE É?
• Polimorfismo significa "muitas formas".
• Ela permite usar o mesmo elemento de formas diferentes.
• Princípio pelo qual duas ou mais classes derivadas de
uma mesma superclasse podem invocar métodos que têm
a mesma assinatura, mas com comportamentos distintos.
EXEMPLO
• Uma classe Base onde tenha um método CalcularVendas();
• Então podemos ter outras duas diferentes classes, uma
Diretor, Vendedor;
• Podemos por um cálculo onde o Diretor ganha uma taxa
extra que o vendedor quando a venda for feita.
• Assim temos um mesmo método, com diferentes formas.
SOBRECARGA/OVERLOAD
• Overload consiste em criar mais de um método com o
mesmo nome, mas com suas assinaturas e parâmetros
diferentes, para que o interpretador saiba qual método
usar na hora de execução.
• Portanto ela ocorre na mesma classe.
SOBRESCRITA/OVERRIDE
• Override consiste quando uma classe filha sobrescreve o
método da classe pai, e altera o comportamento do
método, mas a assinatura do método deve ser igual em
ambas classes.
• Portanto ela ocorre em classes diferentes.
CLASSES ABSTRATAS
O QUE É?
• É uma superclasse que não possui instâncias;
• Quando e chamado o termo abstract na classe é impedido
que ela possa ser instanciada;
POR QUE USAR?
• Servem como “modelo” para outras classes que dela
herdem, não podendo ser instanciada por si só.
• Para ter um objeto de uma classe abstrata é necessário
criar uma classe mais especializada herdando dela e
então instanciar essa nova classe.
• Os métodos da classe abstrata devem então serem
sobrescritos nas classes filhas.
INTERFACE
O QUE É?
• É um recurso que define ações que devem ser
obrigatoriamente executadas, mas que cada classe pode
executar de forma diferente.
• Interfaces contém valores constantes ou assinaturas de
métodos que devem ser implementados dentro de uma
classe.
EXEMPLO
• Interface com nome FiguraGeometrica com um método
getArea()
• Outras duas classes uma Quadrado() e uma Triangulo()
utilizando o mesmo metodo mas modos diferentes de
operação.
• Na classe Quadrado() para fazer o calculo da área do
quadrado e na classe Triangulo() para fazer o calculo da
área do triângulo.
• As duas contem modos diferentes de calcular suas áreas.

Mais conteúdo relacionado

Mais procurados

Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosLeonardo Melo Santos
 
Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Natanael Fonseca
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETLeonardo Melo Santos
 
Java 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoJava 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoRegis Magalhães
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02Natanael Fonseca
 
Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Natanael Fonseca
 
Java básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosJava básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosProfessor Samuel Ribeiro
 
Aula 3 introducao a orientação a objetos
Aula 3   introducao a orientação a objetosAula 3   introducao a orientação a objetos
Aula 3 introducao a orientação a objetosRafael Pinheiro
 
Linguagem de programação implementação de classes
Linguagem de programação   implementação de classesLinguagem de programação   implementação de classes
Linguagem de programação implementação de classesCarlos Melo
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Marcelo Zeferino
 

Mais procurados (20)

SCJP
SCJPSCJP
SCJP
 
Java - Boas práticas
Java - Boas práticasJava - Boas práticas
Java - Boas práticas
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
 
Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Curso Java Básico - Aula 04
Curso Java Básico - Aula 04
 
Poo
PooPoo
Poo
 
Semana um
Semana umSemana um
Semana um
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NET
 
Java 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoJava 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita Polimorfismo
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
 
Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Curso Java Básico - Aula 03
Curso Java Básico - Aula 03
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
POO Herança
POO HerançaPOO Herança
POO Herança
 
Java básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosJava básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetos
 
Aula 3 introducao a orientação a objetos
Aula 3   introducao a orientação a objetosAula 3   introducao a orientação a objetos
Aula 3 introducao a orientação a objetos
 
Linguagem de programação implementação de classes
Linguagem de programação   implementação de classesLinguagem de programação   implementação de classes
Linguagem de programação implementação de classes
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1
 
Guia Rápido Java
Guia Rápido JavaGuia Rápido Java
Guia Rápido Java
 
Prototype
PrototypePrototype
Prototype
 
Cap10
Cap10Cap10
Cap10
 

Semelhante a Estudos Technocorp

Programação C - Aula 1
Programação C - Aula 1Programação C - Aula 1
Programação C - Aula 1Filipo Mór
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
Java Básico :: Modificadores de acesso
Java Básico :: Modificadores de acessoJava Básico :: Modificadores de acesso
Java Básico :: Modificadores de acessoWesley R. Bezerra
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Ryan Padilha
 
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16marcusNOGUEIRA
 
Java Básico :: Orientação a objetos
Java Básico :: Orientação a objetosJava Básico :: Orientação a objetos
Java Básico :: Orientação a objetosWesley R. Bezerra
 
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
 
Prototype1 - thiago
Prototype1 - thiagoPrototype1 - thiago
Prototype1 - thiagotceufrasio1
 

Semelhante a Estudos Technocorp (20)

JAVA - Pacotes
JAVA - PacotesJAVA - Pacotes
JAVA - Pacotes
 
Programação C - Aula 1
Programação C - Aula 1Programação C - Aula 1
Programação C - Aula 1
 
Aula orientação a objetos
Aula orientação a objetosAula orientação a objetos
Aula orientação a objetos
 
Herança
HerançaHerança
Herança
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Mapeamento de herança OR
Mapeamento de herança ORMapeamento de herança OR
Mapeamento de herança OR
 
Java Básico :: Modificadores de acesso
Java Básico :: Modificadores de acessoJava Básico :: Modificadores de acesso
Java Básico :: Modificadores de acesso
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 
Poo padadigmas
Poo padadigmasPoo padadigmas
Poo padadigmas
 
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16
Conceitos de Orientação a Objeto e Exemplos no Estudo de Caso do TRT-16
 
Refatorações
RefatoraçõesRefatorações
Refatorações
 
Java Básico :: Orientação a objetos
Java Básico :: Orientação a objetosJava Básico :: Orientação a objetos
Java Básico :: Orientação a objetos
 
Code Smells
Code SmellsCode Smells
Code Smells
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
 
Refatoração
RefatoraçãoRefatoração
Refatoração
 
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
 
Prototype1 - thiago
Prototype1 - thiagoPrototype1 - thiago
Prototype1 - thiago
 
Clean code em C#
Clean code em C#Clean code em C#
Clean code em C#
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 

Último

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 

Último (6)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Estudos Technocorp

  • 2. INTRODUÇÃO • Apresentar a série de conteúdos listados para a semana.
  • 3. SUMÁRIO - Git e Github; - Controle de acessos (public, private, protected); - Statics methods; - POO; - Herança; - Polimorfismo; - Classes Abstratas; - Interface;
  • 5. GIT • É um sistema de controle de versões distribuído, usado principalmente no desenvolvimento de software, mas pode ser usado para registrar o histórico de edições de qualquer tipo de arquivo.
  • 6. GITHUB • É uma plataforma de hospedagem de código-fonte com controle de versão usando o Git. Ele permite que desenvolvedores, utilitários ou qualquer usuário cadastrado na plataforma contribuam em projetos privados e/ou Open Source de qualquer lugar do mundo.
  • 7. FLUXO DE TRABALHO • Working Directory • Que contém os arquivos vigentes. • Index • Funciona como uma área temporária. • Head • Essa aponta para o ultimo commit que você fizer.
  • 8. COMANDOS • Init • Cria um repositório. • Clone • Clona o seu projeto • Add • Adiciona arquivos ao index. • Commit • Grava atualizações de código.
  • 9. COMANDOS • Push • Atualizar referências remotas junto com objetos associados • Pull • Buscar e integrar com outro repositório ou uma filial loca • Branch • Lista, cria, ou deleta branchs • Ssh • É uma forma de passar o seu projeto de modo seguro para nuvem.
  • 10. COMANDOS • Fork • Utilizado para pegar um clone do projeto de outra conta para a sua. • Pull Request • Como voce não poderá comitar a implementação diretamente no projeto, o pull request manda uma submissão da solução que você desenvolveu.
  • 11. CONTROLE DE ACESSOS PUBLIC, PRIVATE, PROTECTED
  • 12. PUBLIC • Todos tem acesso aos seus atributos.
  • 13. PRIVATE • Única classe que tem acesso aos atributo é a própria classe que o define.
  • 14. PROTECTED • Se uma classe (mesmo que esteja fora do pacote) estende da classe com o atributo protected, ela terá acesso a ele. Então o acesso é por pacote e por herança.
  • 16. O QUE SÃO? • São métodos que não precisam de um objeto, podem ser chamados sem necessidade de instanciar a classe. • Um método estático só pode conter variáveis estáticas e só pode acessar outros itens estáticos. • Os membros estáticos são alocados na área do heap de alta frequência da memória.
  • 17. EXEMPLO DE UTILIZAÇÃO • Uma classe estática pode ser usada como um contêiner conveniente para conjuntos de métodos que operam apenas em parâmetros de entrada e não precisam obter ou definir campos de instância internos. • Como exemplo o Math.random(); • Ele é chamado sem a instanciação da classe Math.
  • 19. O QUE É? • É um modo de projeto em que há diversas classes que se relacionam juntamente de um Main, que é o corpo do projeto, a parte executável.
  • 20. CLASSE • São receitas de um objeto, aonde têm características e comportamentos, permitindo assim armazenar propriedades e métodos dentro dela. • Exemplo:
  • 22. VANTAGENS • Utilização de um único padrão conceitual durante todo o processo de criação de software; • Ciclo de vida mais longo para os sistemas; • Possibilidade de se construir sistema muito mais complexos, pela incorporação de funções prontas.
  • 24. O QUE É? • É um princípio que permite criação de novas classes a partir de outras previamente criadas. • Essas classes são chamadas de subclasses. • Uma subclasse herda métodos e atributos de sua superclasse. • É o mecanismo pelo qual uma classe pode estender outra aproveitando seus comportamentos (métodos) e estados possíveis (atributos); • Um dos benefícios é que se pode evitar códigos duplicados os agrupando em uma única classe.
  • 25. EXEMPLO • Um objeto de uma subclasse é um tipo de objeto da superclasse; • Objeto "poupança", é uma subclasse de "Conta"; • Portanto, "poupança" é um tipo de Conta; • Também pode ter o tipo de conta "Corrente" que é outra subclasse;
  • 26. HERANÇA NÃO É... • Se um objeto de uma subclasse não possui todos os atributos e operações da superclasse, ela não pode ser uma subclasse. • O Java não permite que uma classe estenda mais de uma classe. • Porém ele permite que interfaces estendam outras interfaces. • Existem heranças múltiplas de interfaces, mas não de classes.
  • 28. O QUE É? • Polimorfismo significa "muitas formas". • Ela permite usar o mesmo elemento de formas diferentes. • Princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma assinatura, mas com comportamentos distintos.
  • 29. EXEMPLO • Uma classe Base onde tenha um método CalcularVendas(); • Então podemos ter outras duas diferentes classes, uma Diretor, Vendedor; • Podemos por um cálculo onde o Diretor ganha uma taxa extra que o vendedor quando a venda for feita. • Assim temos um mesmo método, com diferentes formas.
  • 30. SOBRECARGA/OVERLOAD • Overload consiste em criar mais de um método com o mesmo nome, mas com suas assinaturas e parâmetros diferentes, para que o interpretador saiba qual método usar na hora de execução. • Portanto ela ocorre na mesma classe.
  • 31. SOBRESCRITA/OVERRIDE • Override consiste quando uma classe filha sobrescreve o método da classe pai, e altera o comportamento do método, mas a assinatura do método deve ser igual em ambas classes. • Portanto ela ocorre em classes diferentes.
  • 33. O QUE É? • É uma superclasse que não possui instâncias; • Quando e chamado o termo abstract na classe é impedido que ela possa ser instanciada;
  • 34. POR QUE USAR? • Servem como “modelo” para outras classes que dela herdem, não podendo ser instanciada por si só. • Para ter um objeto de uma classe abstrata é necessário criar uma classe mais especializada herdando dela e então instanciar essa nova classe. • Os métodos da classe abstrata devem então serem sobrescritos nas classes filhas.
  • 36. O QUE É? • É um recurso que define ações que devem ser obrigatoriamente executadas, mas que cada classe pode executar de forma diferente. • Interfaces contém valores constantes ou assinaturas de métodos que devem ser implementados dentro de uma classe.
  • 37. EXEMPLO • Interface com nome FiguraGeometrica com um método getArea() • Outras duas classes uma Quadrado() e uma Triangulo() utilizando o mesmo metodo mas modos diferentes de operação. • Na classe Quadrado() para fazer o calculo da área do quadrado e na classe Triangulo() para fazer o calculo da área do triângulo. • As duas contem modos diferentes de calcular suas áreas.