SlideShare uma empresa Scribd logo
PROGRAMAÇÃO
ORIENTADA A OBJETOS
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
OBJETO
• Uma entidade que possui características e
comportamentos
• É uma construção de software que
encapsula estado e comportamento.
• Os objetos permitem que você modelo seu
software em termos reais
• Objetos são agrupados pelos seus
comportamentos e atributos comuns
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Classes
• Define os atributos e comportamentos
comuns compartilhados por um tipo de
objeto.
• Os objetos de certo tipo ou classificação
compartilham os mesmos
comportamentos e atributos.
• Uma classe é usada para instanciar (ou
criar) objetos
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Atributos e Comportamentos
• ATRIBUTOS:
– São características de uma classe visíveis
externamente
– Exemplo: cor dos olhos, cor dos cabelos, etc.
• COMPORTAMENTOS:
– É uma ação executada por um objeto quando
passada uma mensagem ou em resposta a
uma mudança de estado: é algo que um objeto
faz.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Mensagem
• Comunicação entre objetos.
• Humanos trocam mensagens entre si
• Os objetos fazem o mesmo.
• Exemplo: um objeto conta bancária pode
receber uma mensagem para reduzir seu
saldo
• Uma mensagem pode ser enviada por um
método
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Implementam uma operação/função;
• Realizam uma tarefa em um programa
(classe)
• Descrevem os mecanismos que realmente
realizam suas tarefas
• Uma classe abriga um ou mais métodos
• EXEMPLO: Métodos SET/GET são
comportamentos da classe que retornam ou
configuram atributos.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos Acessores
• Métodos GET são também chamados de
métodos assessores.
• Dão acesso aos dados internos de um objeto
• Ocultam o fato de os dados estarem em uma
variável, em uma combinação de variáveis
ou serem calculados
• Permitem que você mude ou recupere o
valor e tem efeitos colaterais sobre o estado
interno.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos Mutantes
• Métodos SET são também chamados de
métodos mutantes.
• Permitem que você altere o estado interno de
um objeto
• Pode processar sua entrada como quiser,
antes de alterar o estado interno do objeto
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Exemplo: uma classe que representa uma
conta bancária poderia contar com um
método para depósitos, outro para saques e
outro para obter o saldo
• Antes de qualquer coisa, o programador
deve construir um objeto de uma classe
antes de fazer um programa realizar as
tarefas descritas na própria classe
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Métodos são como funções ou procedimentos
• Permitem que o programador modularize um
programa, separando suas tarefas em unidades
• Tornam os programas mais gerenciáveis
• Permite reutilização de código
• Um pequeno método que realiza uma única tarefa é
mais fácil de testar e depurar do que um método
maior que realiza muitas tarefas
• Limite o seu método à realização de uma única
tarefa
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Dê um nome apropriado ao seu método, que
expresse o que ele realmente faz
• Um método é invocado por uma chamada de
método
• Quando o método chamado completa sua
tarefa, ele retorna um resultado ou retorna o
controle ao chamador
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Um método com muitos parâmetros pode
estar realizando tarefas demais
• Considere dividir o método em métodos
menores que realizam tarefas separadas
• Um tipo de dado é requerido para cada
parâmetro na lista de parâmetros de um
método!
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Métodos podem exigir um ou mais parâmetros
que representam informações adicionais
necessárias para realizar a tarefa
• Ao declarar um método você deve especificar se
o método requer dados para realizar a sua
tarefa, ou não.
• O método pode ter uma lista de parâmetros.
Nenhum, apenas um ou vários.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Métodos
• Retorno de método: quando um método tem
um tipo, ao completar sua tarefa, o método
retorna, ao método chamador, um resultado
• Cliente de um objeto: é qualquer objeto que
chama os métodos de outro objeto
• Todo parâmetro deve especificar um tipo e um
identificador
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Chamada de Métodos
• Quando mensagens são enviadas para um
objeto
• Instrui o método do objeto a fazer a sua tarefa
• Um objeto tem atributos que são portados com o
objeto quando ele é utilizado em um programa
• Exemplo: cada objeto conta bancária sabe o
saldo da conta que ele representa, mas não
sabe os saldos de outras contas do banco
• Não podemos chamar um método que pertence
a outra classe até criar um objeto dessa classe
• Cada nova classe que criamos, torna-se um
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Chamada de Métodos
• New:
• Cria um objeto da classe
• Cada nova instância é uma duplicata da
ultima
• Uma vez instanciada, a instancia transporta
comportamentos e controla seu estado
• Embora o estado possa variar com o passar
do tempo, a instancia ainda é um objeto
• Exemplo: um mamífero de cor cinza é tão
mamífero quanto outro de cor marrom.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Chamda de Métodos
• Três formas de chamar um método. Exemplos:
– MaiorValor(n1, n2, n3);  o próprio nome do
método
– MaiorValor.determineMaximo();  uma
variável que contém uma referência a um
objeto
– Math.sqrt();  o nome da classe
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Sobrecarga de Métodos
• Métodos com o mesmo nome podem ser
declarados na mesma classe, contanto que
tenham diferentes conjuntos de parâmetros
• É usada para criar vários métodos com o
mesmo nome que realizam as mesmas tarefas
ou tarefas semelhantes mas sobre tipos
diferentes de números ou números diferentes de
argumentos
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Sobrecarga de Métodos
• O compilador distingue os métodos
sobrecarregados pelas suas assinaturas
• Distingue pelo nome do método, número do
método, tipos dos parâmetros e ordem dos
parâmetros
• Void metodo1(int a, float b) e void metodo1(float
a, int b) são diferentes!!!!
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Sobrecarga de Métodos
• Declarações de métodos sobrecarregados com
assinaturas idênticas causam erros mesmo que
os tipos de retorno sejam diferentes
• O tipo de retorno então não diferenciam os
métodos!
• Uso da palavra OVERRIDE
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Construtores
• São métodos usados para inicializar objetos.
• É utilizado para inicializar um objeto de uma
classe
• Java requer uma chamada de construtor para
todo objeto que é criado
• NEW: chama o construtor da classe para
realizar a inicialização
• O compilador JAVA fornece um construtor-
padrão sem parâmetros em qualquer classe que
não inclua explicitamente um construtor.
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Construtores
• Construtores não precisam de TIPO em sua
assinatura, diferentemente dos MÉTODOS.
• Um construtor deve ter o mesmo nome da sua
classe
• Uma classe pode ter vários métodos
construtores
• Construtores NÃO podem retornar valores
• Se o programador especificar um construtor
para a classe, o JAVA não criará um construtor-
padrão
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Construtores
• Construtor vazio:
– É um método sem parâmetros algum
• Construtor parametrizado:
– É um método que contém parâmetros em sua
assinatura
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Relacionamentos de Objeto
• Objetos se comunicam uns com os outros
através de mensagens
• As mensagens fazem com que um objeto
realize algo
• Passar uma mensagem é o mesmo que
chamar um método para mudar o estado do
objeto ou para exercer um comportamento
• Mensagens permitem que os objetos
permaneçam independentes
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Relacionamentos de Objeto
• Quando um objeto envia uma mensagem
para outro, geralmente ele não se
preocupa coma maneira como o objeto
escolhe transportar o comportamento
solicitado
• O objeto solicitante se preocupa apenas
que o comportamento aconteça
• Um objeto pode conter outros objetos
dentro dele
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Vantagens da POO
• Natural
• Confiável
• Reutilizável
• Manutenível
• Extensível
• Oportunos
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016
Referências
03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto
DesenvolvimentodeSoftwarepareaWeb2016

Mais conteúdo relacionado

Mais procurados

Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
Daniel Brandão
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open Source
Diogo Silva
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
Allen Gomes Vidal
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
Igor Takenami
 
Aula sobre Linux.
Aula sobre Linux. Aula sobre Linux.
Aula sobre Linux.
Armando Rivarola
 
Programação Orientação a Objetos - Herança
Programação Orientação a Objetos - HerançaProgramação Orientação a Objetos - Herança
Programação Orientação a Objetos - Herança
Daniel Brandão
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
André Felipe Santos Martins
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
Orlando Junior
 
So-mod-4
So-mod-4So-mod-4
So-mod-4
diogoa21
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
Gabriel Vinicios Silva Maganha
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
Claudio Martins
 
O que é um browser
O que é um browserO que é um browser
O que é um browser
Leonor Costa
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
Karen Costa
 
Diagrama de Casos de Uso
Diagrama de Casos de UsoDiagrama de Casos de Uso
Diagrama de Casos de Uso
Nécio de Lima Veras
 
Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
Nécio de Lima Veras
 
Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de Computadores
Luis Ferreira
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
Mailson Queiroz
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
Marcio Marinho
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
Ludimila Monjardim Casagrande
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
Sedu
 

Mais procurados (20)

Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open Source
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Aula sobre Linux.
Aula sobre Linux. Aula sobre Linux.
Aula sobre Linux.
 
Programação Orientação a Objetos - Herança
Programação Orientação a Objetos - HerançaProgramação Orientação a Objetos - Herança
Programação Orientação a Objetos - Herança
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
So-mod-4
So-mod-4So-mod-4
So-mod-4
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
 
O que é um browser
O que é um browserO que é um browser
O que é um browser
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
 
Diagrama de Casos de Uso
Diagrama de Casos de UsoDiagrama de Casos de Uso
Diagrama de Casos de Uso
 
Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
 
Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de Computadores
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 

Destaque

Encapsulacion
EncapsulacionEncapsulacion
Encapsulacion
jbersosa
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006
Samuel Marrero
 
Programación!! . .
Programación!! . .Programación!! . .
Programación!! . .
David Portillo Hernandez
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
1da4
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
Javier Camacho
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
Karlytoz_36
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
Actimel
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación Estructurada
Michael de la Cruz
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
Cesar David Fernandez Grueso
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacion
crisricguepi
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
Josue Lara Reyes
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Kudos S.A.S
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
da4
 

Destaque (13)

Encapsulacion
EncapsulacionEncapsulacion
Encapsulacion
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006
 
Programación!! . .
Programación!! . .Programación!! . .
Programación!! . .
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación Estructurada
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacion
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
 

Semelhante a Programação Orientada a Objetos parte 1

Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
Carlos Melo
 
Poo
PooPoo
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
Elaine Cecília Gatto
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
PAULO Moreira
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
Luis Ferreira
 
Patterns
PatternsPatterns
Patterns
gersaoliveira
 
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
2009_2Sem.POOII.Ciencia Aula2   Revisao De Classes E Objetos2009_2Sem.POOII.Ciencia Aula2   Revisao De Classes E Objetos
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
guest9b4c7f
 
Design Patterns on Rails
Design Patterns on RailsDesign Patterns on Rails
Design Patterns on Rails
tchandy
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
Maurício Linhares
 
Java7
Java7Java7
POO - Aula 003
POO - Aula 003POO - Aula 003
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
Wesley R. Bezerra
 
Java aula 2
Java aula 2Java aula 2
Java aula 2
Endel Silva
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
Gabriel Faustino
 
Programação OO - Java
Programação OO - JavaProgramação OO - Java
Programação OO - Java
Secretaria de Educação de Goiás
 
Intro oca,ocp 6 & 7, oo basics
Intro   oca,ocp 6 & 7, oo basicsIntro   oca,ocp 6 & 7, oo basics
Intro oca,ocp 6 & 7, oo basics
Juarez Junior
 
Começando com React.js
Começando com React.jsComeçando com React.js
Começando com React.js
João Pedro Benedetti Misturini
 
Do oo para_funcional
Do oo para_funcionalDo oo para_funcional
Do oo para_funcional
Pedro Correia
 
Poo slides01
Poo slides01Poo slides01
Poo slides01
jmtofoli
 
Class 04 - Android Study Jams: Android Development for Beginners
Class 04 - Android Study Jams: Android Development for BeginnersClass 04 - Android Study Jams: Android Development for Beginners
Class 04 - Android Study Jams: Android Development for Beginners
Jordan Silva
 

Semelhante a Programação Orientada a Objetos parte 1 (20)

Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
 
Poo
PooPoo
Poo
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Patterns
PatternsPatterns
Patterns
 
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
2009_2Sem.POOII.Ciencia Aula2   Revisao De Classes E Objetos2009_2Sem.POOII.Ciencia Aula2   Revisao De Classes E Objetos
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
 
Design Patterns on Rails
Design Patterns on RailsDesign Patterns on Rails
Design Patterns on Rails
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Java7
Java7Java7
Java7
 
POO - Aula 003
POO - Aula 003POO - Aula 003
POO - Aula 003
 
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
 
Java aula 2
Java aula 2Java aula 2
Java aula 2
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Programação OO - Java
Programação OO - JavaProgramação OO - Java
Programação OO - Java
 
Intro oca,ocp 6 & 7, oo basics
Intro   oca,ocp 6 & 7, oo basicsIntro   oca,ocp 6 & 7, oo basics
Intro oca,ocp 6 & 7, oo basics
 
Começando com React.js
Começando com React.jsComeçando com React.js
Começando com React.js
 
Do oo para_funcional
Do oo para_funcionalDo oo para_funcional
Do oo para_funcional
 
Poo slides01
Poo slides01Poo slides01
Poo slides01
 
Class 04 - Android Study Jams: Android Development for Beginners
Class 04 - Android Study Jams: Android Development for BeginnersClass 04 - Android Study Jams: Android Development for Beginners
Class 04 - Android Study Jams: Android Development for Beginners
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
Elaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
Elaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
Elaine Cecília Gatto
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
Elaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
Elaine Cecília Gatto
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
Elaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
Elaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
Elaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Elaine Cecília Gatto
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
Elaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
Elaine Cecília Gatto
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
Elaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Elaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
Elaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

Caderno 1 - Módulo Água JMS 2024 (1).pdf
Caderno 1 -  Módulo Água JMS 2024 (1).pdfCaderno 1 -  Módulo Água JMS 2024 (1).pdf
Caderno 1 - Módulo Água JMS 2024 (1).pdf
SupervisoEMAC
 
Acróstico - Bullying é crime!
Acróstico - Bullying é crime!Acróstico - Bullying é crime!
Acróstico - Bullying é crime!
Mary Alvarenga
 
reconquista sobre a guerra de ibérica.docx
reconquista sobre a guerra de ibérica.docxreconquista sobre a guerra de ibérica.docx
reconquista sobre a guerra de ibérica.docx
felipescherner
 
Relatório de Atividades 2011 CENSIPAM.pdf
Relatório de Atividades 2011 CENSIPAM.pdfRelatório de Atividades 2011 CENSIPAM.pdf
Relatório de Atividades 2011 CENSIPAM.pdf
Falcão Brasil
 
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1) educação infantil fu...
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1)  educação infantil fu...1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1)  educação infantil fu...
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1) educação infantil fu...
antonio carlos
 
Ideais do Ministério jovem Adventista pdf
Ideais do Ministério jovem Adventista pdfIdeais do Ministério jovem Adventista pdf
Ideais do Ministério jovem Adventista pdf
Anesio2
 
Painel para comemerorar odia dos avós grátis.pdf
Painel  para comemerorar odia dos avós grátis.pdfPainel  para comemerorar odia dos avós grátis.pdf
Painel para comemerorar odia dos avós grátis.pdf
marcos oliveira
 
Noite Alva! José Ernesto Ferraresso.ppsx
Noite Alva! José Ernesto Ferraresso.ppsxNoite Alva! José Ernesto Ferraresso.ppsx
Noite Alva! José Ernesto Ferraresso.ppsx
Luzia Gabriele
 
Guerra de reconquista da Península ibérica
Guerra de reconquista da Península ibéricaGuerra de reconquista da Península ibérica
Guerra de reconquista da Península ibérica
felipescherner
 
Relatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdfRelatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdf
Falcão Brasil
 
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Centro Jacques Delors
 
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptxA perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
marcos oliveira
 
As Ideias Têm Consequências - Richard M. Weaver
As Ideias Têm Consequências - Richard M. WeaverAs Ideias Têm Consequências - Richard M. Weaver
As Ideias Têm Consequências - Richard M. Weaver
C4io99
 
IV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptxIV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptx
Ligia Galvão
 
Trabalho Colaborativo na educação especial.pdf
Trabalho Colaborativo na educação especial.pdfTrabalho Colaborativo na educação especial.pdf
Trabalho Colaborativo na educação especial.pdf
marcos oliveira
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
Sandra Pratas
 
Aprendizagem Imersiva: Conceitos e Caminhos
Aprendizagem Imersiva: Conceitos e CaminhosAprendizagem Imersiva: Conceitos e Caminhos
Aprendizagem Imersiva: Conceitos e Caminhos
Leonel Morgado
 
Relatório de Atividades 2021/2022 CENSIPAM.pdf
Relatório de Atividades 2021/2022 CENSIPAM.pdfRelatório de Atividades 2021/2022 CENSIPAM.pdf
Relatório de Atividades 2021/2022 CENSIPAM.pdf
Falcão Brasil
 
Apostila em LIBRAS - Curso Básico ENAP 2019.pdf
Apostila em LIBRAS - Curso Básico ENAP 2019.pdfApostila em LIBRAS - Curso Básico ENAP 2019.pdf
Apostila em LIBRAS - Curso Básico ENAP 2019.pdf
pattyhsilva271204
 

Último (20)

Caderno 1 - Módulo Água JMS 2024 (1).pdf
Caderno 1 -  Módulo Água JMS 2024 (1).pdfCaderno 1 -  Módulo Água JMS 2024 (1).pdf
Caderno 1 - Módulo Água JMS 2024 (1).pdf
 
Acróstico - Bullying é crime!
Acróstico - Bullying é crime!Acróstico - Bullying é crime!
Acróstico - Bullying é crime!
 
reconquista sobre a guerra de ibérica.docx
reconquista sobre a guerra de ibérica.docxreconquista sobre a guerra de ibérica.docx
reconquista sobre a guerra de ibérica.docx
 
Relatório de Atividades 2011 CENSIPAM.pdf
Relatório de Atividades 2011 CENSIPAM.pdfRelatório de Atividades 2011 CENSIPAM.pdf
Relatório de Atividades 2011 CENSIPAM.pdf
 
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1) educação infantil fu...
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1)  educação infantil fu...1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1)  educação infantil fu...
1°ao5°ano_HISTÓRIA_ORGANIZADOR CURRICULAR BIMESTRAL (1) educação infantil fu...
 
Ideais do Ministério jovem Adventista pdf
Ideais do Ministério jovem Adventista pdfIdeais do Ministério jovem Adventista pdf
Ideais do Ministério jovem Adventista pdf
 
Painel para comemerorar odia dos avós grátis.pdf
Painel  para comemerorar odia dos avós grátis.pdfPainel  para comemerorar odia dos avós grátis.pdf
Painel para comemerorar odia dos avós grátis.pdf
 
Noite Alva! José Ernesto Ferraresso.ppsx
Noite Alva! José Ernesto Ferraresso.ppsxNoite Alva! José Ernesto Ferraresso.ppsx
Noite Alva! José Ernesto Ferraresso.ppsx
 
Guerra de reconquista da Península ibérica
Guerra de reconquista da Península ibéricaGuerra de reconquista da Península ibérica
Guerra de reconquista da Península ibérica
 
Relatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdfRelatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdf
 
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
 
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptxA perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
 
As Ideias Têm Consequências - Richard M. Weaver
As Ideias Têm Consequências - Richard M. WeaverAs Ideias Têm Consequências - Richard M. Weaver
As Ideias Têm Consequências - Richard M. Weaver
 
IV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptxIV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptx
 
Trabalho Colaborativo na educação especial.pdf
Trabalho Colaborativo na educação especial.pdfTrabalho Colaborativo na educação especial.pdf
Trabalho Colaborativo na educação especial.pdf
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
 
Aprendizagem Imersiva: Conceitos e Caminhos
Aprendizagem Imersiva: Conceitos e CaminhosAprendizagem Imersiva: Conceitos e Caminhos
Aprendizagem Imersiva: Conceitos e Caminhos
 
Relatório de Atividades 2021/2022 CENSIPAM.pdf
Relatório de Atividades 2021/2022 CENSIPAM.pdfRelatório de Atividades 2021/2022 CENSIPAM.pdf
Relatório de Atividades 2021/2022 CENSIPAM.pdf
 
Apostila em LIBRAS - Curso Básico ENAP 2019.pdf
Apostila em LIBRAS - Curso Básico ENAP 2019.pdfApostila em LIBRAS - Curso Básico ENAP 2019.pdf
Apostila em LIBRAS - Curso Básico ENAP 2019.pdf
 
FOTOS_AS CIÊNCIAS EM AÇÃO .
FOTOS_AS CIÊNCIAS EM AÇÃO                .FOTOS_AS CIÊNCIAS EM AÇÃO                .
FOTOS_AS CIÊNCIAS EM AÇÃO .
 

Programação Orientada a Objetos parte 1

  • 2. OBJETO • Uma entidade que possui características e comportamentos • É uma construção de software que encapsula estado e comportamento. • Os objetos permitem que você modelo seu software em termos reais • Objetos são agrupados pelos seus comportamentos e atributos comuns 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 3. Classes • Define os atributos e comportamentos comuns compartilhados por um tipo de objeto. • Os objetos de certo tipo ou classificação compartilham os mesmos comportamentos e atributos. • Uma classe é usada para instanciar (ou criar) objetos 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 4. Atributos e Comportamentos • ATRIBUTOS: – São características de uma classe visíveis externamente – Exemplo: cor dos olhos, cor dos cabelos, etc. • COMPORTAMENTOS: – É uma ação executada por um objeto quando passada uma mensagem ou em resposta a uma mudança de estado: é algo que um objeto faz. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 5. Mensagem • Comunicação entre objetos. • Humanos trocam mensagens entre si • Os objetos fazem o mesmo. • Exemplo: um objeto conta bancária pode receber uma mensagem para reduzir seu saldo • Uma mensagem pode ser enviada por um método 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 6. Métodos • Implementam uma operação/função; • Realizam uma tarefa em um programa (classe) • Descrevem os mecanismos que realmente realizam suas tarefas • Uma classe abriga um ou mais métodos • EXEMPLO: Métodos SET/GET são comportamentos da classe que retornam ou configuram atributos. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 7. Métodos Acessores • Métodos GET são também chamados de métodos assessores. • Dão acesso aos dados internos de um objeto • Ocultam o fato de os dados estarem em uma variável, em uma combinação de variáveis ou serem calculados • Permitem que você mude ou recupere o valor e tem efeitos colaterais sobre o estado interno. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 8. Métodos Mutantes • Métodos SET são também chamados de métodos mutantes. • Permitem que você altere o estado interno de um objeto • Pode processar sua entrada como quiser, antes de alterar o estado interno do objeto 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 9. Métodos • Exemplo: uma classe que representa uma conta bancária poderia contar com um método para depósitos, outro para saques e outro para obter o saldo • Antes de qualquer coisa, o programador deve construir um objeto de uma classe antes de fazer um programa realizar as tarefas descritas na própria classe 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 10. Métodos • Métodos são como funções ou procedimentos • Permitem que o programador modularize um programa, separando suas tarefas em unidades • Tornam os programas mais gerenciáveis • Permite reutilização de código • Um pequeno método que realiza uma única tarefa é mais fácil de testar e depurar do que um método maior que realiza muitas tarefas • Limite o seu método à realização de uma única tarefa 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 11. Métodos • Dê um nome apropriado ao seu método, que expresse o que ele realmente faz • Um método é invocado por uma chamada de método • Quando o método chamado completa sua tarefa, ele retorna um resultado ou retorna o controle ao chamador 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 12. Métodos • Um método com muitos parâmetros pode estar realizando tarefas demais • Considere dividir o método em métodos menores que realizam tarefas separadas • Um tipo de dado é requerido para cada parâmetro na lista de parâmetros de um método! 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 13. Métodos • Métodos podem exigir um ou mais parâmetros que representam informações adicionais necessárias para realizar a tarefa • Ao declarar um método você deve especificar se o método requer dados para realizar a sua tarefa, ou não. • O método pode ter uma lista de parâmetros. Nenhum, apenas um ou vários. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 14. Métodos • Retorno de método: quando um método tem um tipo, ao completar sua tarefa, o método retorna, ao método chamador, um resultado • Cliente de um objeto: é qualquer objeto que chama os métodos de outro objeto • Todo parâmetro deve especificar um tipo e um identificador 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 15. Chamada de Métodos • Quando mensagens são enviadas para um objeto • Instrui o método do objeto a fazer a sua tarefa • Um objeto tem atributos que são portados com o objeto quando ele é utilizado em um programa • Exemplo: cada objeto conta bancária sabe o saldo da conta que ele representa, mas não sabe os saldos de outras contas do banco • Não podemos chamar um método que pertence a outra classe até criar um objeto dessa classe • Cada nova classe que criamos, torna-se um 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 16. Chamada de Métodos • New: • Cria um objeto da classe • Cada nova instância é uma duplicata da ultima • Uma vez instanciada, a instancia transporta comportamentos e controla seu estado • Embora o estado possa variar com o passar do tempo, a instancia ainda é um objeto • Exemplo: um mamífero de cor cinza é tão mamífero quanto outro de cor marrom. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 17. Chamda de Métodos • Três formas de chamar um método. Exemplos: – MaiorValor(n1, n2, n3);  o próprio nome do método – MaiorValor.determineMaximo();  uma variável que contém uma referência a um objeto – Math.sqrt();  o nome da classe 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 18. Sobrecarga de Métodos • Métodos com o mesmo nome podem ser declarados na mesma classe, contanto que tenham diferentes conjuntos de parâmetros • É usada para criar vários métodos com o mesmo nome que realizam as mesmas tarefas ou tarefas semelhantes mas sobre tipos diferentes de números ou números diferentes de argumentos 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 19. Sobrecarga de Métodos • O compilador distingue os métodos sobrecarregados pelas suas assinaturas • Distingue pelo nome do método, número do método, tipos dos parâmetros e ordem dos parâmetros • Void metodo1(int a, float b) e void metodo1(float a, int b) são diferentes!!!! 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 20. Sobrecarga de Métodos • Declarações de métodos sobrecarregados com assinaturas idênticas causam erros mesmo que os tipos de retorno sejam diferentes • O tipo de retorno então não diferenciam os métodos! • Uso da palavra OVERRIDE 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 21. Construtores • São métodos usados para inicializar objetos. • É utilizado para inicializar um objeto de uma classe • Java requer uma chamada de construtor para todo objeto que é criado • NEW: chama o construtor da classe para realizar a inicialização • O compilador JAVA fornece um construtor- padrão sem parâmetros em qualquer classe que não inclua explicitamente um construtor. 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 22. Construtores • Construtores não precisam de TIPO em sua assinatura, diferentemente dos MÉTODOS. • Um construtor deve ter o mesmo nome da sua classe • Uma classe pode ter vários métodos construtores • Construtores NÃO podem retornar valores • Se o programador especificar um construtor para a classe, o JAVA não criará um construtor- padrão 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 23. Construtores • Construtor vazio: – É um método sem parâmetros algum • Construtor parametrizado: – É um método que contém parâmetros em sua assinatura 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 24. Relacionamentos de Objeto • Objetos se comunicam uns com os outros através de mensagens • As mensagens fazem com que um objeto realize algo • Passar uma mensagem é o mesmo que chamar um método para mudar o estado do objeto ou para exercer um comportamento • Mensagens permitem que os objetos permaneçam independentes 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 25. Relacionamentos de Objeto • Quando um objeto envia uma mensagem para outro, geralmente ele não se preocupa coma maneira como o objeto escolhe transportar o comportamento solicitado • O objeto solicitante se preocupa apenas que o comportamento aconteça • Um objeto pode conter outros objetos dentro dele 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016
  • 26. Vantagens da POO • Natural • Confiável • Reutilizável • Manutenível • Extensível • Oportunos 03/06/2016Prof.ªM.ªEng.ªElaineCecíliaGatto DesenvolvimentodeSoftwarepareaWeb2016