SlideShare ist ein Scribd-Unternehmen logo
1 von 64
Orientação a Objetos
Linguagem de Programação II
Ciência da Computação
Prof.ª Ms. Elaine Cecília Gatto
Introdução
• Em POO qualquer entidade tem características e
comportamentos
• Vantagens:
• Reutilização de código
• Confiabilidade
• Facilidade de manutenção e extensão
Introdução
• OBJETOS:
• pessoas,
• animais,
• plantas,
• carros,
• aviões,
• edifício,
• computadores,

• sinais de trânsito,
• fornos
de
microondas,
• telefones,
• casas,
• sistemas
de
refrigerção
à
água,
• etc.
Introdução
• Dois tipos de objetos
• Animados
• Inanimados;

• Todos os objetos tem atributos:
• Tamanho
• Forma
• Cor
• Peso
• etc
Introdução
• Todos os objetos tem comportamentos:
• uma bola rola,
• uma bola infla,
• uma bola murcha
• O bebê chora
• O bebê dorme
• O bebê engatinha
• O bebê anda
• etc
Introdução
• Diferentes objetos podem
• exibir comportamentos semelhantes
• ter atributos semelhantes

• Exemplo:
• Comparação entre bebês e adultos
• Comparação entre humanos e chimpanzés
• Portanto OO é semelhante àquilo que as pessoas
utilizam para descrever os objetos do mundo real
Introdução
• Classes: objetos que tem as mesmas características
• Exemplo: uma classe de veículos é composta por
carros, caminhões e patins.
• Herança: novas classes de objetos são derivadas de
uma principal, absorvendo características desta e
adicionando características únicas
Introdução
• Mensagens:
• 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
Introdução
• Encapsulamento:
• A orientação a objetos empacotam atributos e
operações em objetos.
• As operações são os comportamentos dos
objetos.
• Exemplo: podemos dirigir um carro sem conhecer
os detalhes de como motores, transmissões, freios
e sistemas funcionam internamente, mas sabemos
para que serve o acelerador, o freio entre outros.
Introdução
• Em JAVA a unidade de programação é a CLASSE, a
partir da qual os objetos são instanciados (ou
criados)

• Métodos: implementam operações
semelhantes a funções na linguagem C
• Campos: implementam atributos

e

são
Introdução
• Classes: contém campos e conjunto de métodos
que manipulam os campos e fornecem serviços a
outras classes

• Podemos criar muitos objetos a partir de uma
mesma classe
• Associações: relacionamento entre classes
Introdução
• Reutilização de classes: o empacotamento permite
isto, diminuindo custos, tempo e esforço, ajudando
a construir sistemas mais confiáveis e eficientes.

• Classes existentes são confiáveis pois:
• Testes,
• Depuração,
• Ajustes de desempenho
Classes e Objetos
• Método:
• Realiza uma tarefa em um programa (classe)
• Descreve os mecanismos que realmente realizam
suas tarefas
• Oculta do usuário as tarefas complexas que ele
realiza
• Uma classe abriga um ou mais métodos
Classes e Objetos
• 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
Classes e Objetos
• Chamada de método:
• 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
Classes e Objetos
• Atributos são especificados pelas variáveis de
instância da classe.
• EXEMPLO NO NETBEANS
Classes e Objetos
• public
• É uma palavra chave que é um modificador de
acesso
• Significa que o método, classe ou objeto está
diponível para o público, está acessível a todos
• Por fim, pode ser chamado de fora do corpo da
declaração de classe, por métodos ou outras
classes
Classes e Objetos
• Void:
• Palavra chave
• O método realiza uma tarefa mas não retorna
nenuma informação
• Uma classe que contém o método MAIN é um
aplicativo Java
• O MAIN é um método especial que é chamado
automaticamente pela JVM quando você executar
o aplicativo.
Classes e Objetos
• A maioria dos métodos não são chamados
automaticamente
• A classe do exemplo não é um aplicativo Java pois
não contém um método main.
• Ela é simplesmente uma classe.
Classes e Objetos
• Static: um método static é especial porque pode
ser chamado sem primeiro criar um objeto da
classe em que o método é declarado

• Não podemos chamar um método que pertence a
outra classe até criar um objeto dessa classe
Classes e Objetos
• Cada nova classe que criamos, torna-se um novo
tipo em Java que pode ser utilizado para declarar
variáveis e criar objetos

• New: cria um objeto da classe especificada à
direita da palavra chave
Classes e Objetos
• Representação gráfica de uma classe

LivroDeNotas
+ MostrarMensagem()

NomeDaClasse
Atributos
Métodos
Classes e Objetos
• Métodos podem exigir um ou mais parametros que
representam informações adicionais necessárias
para realizar a tarefa

• EXEMPLO NO NETBEANS
• Ao declarar um método você deve especificar se o
método requer dados para realizar a sua tarefa, ou
não.
Classes e Objetos
• Portanto, o método pode ter uma lista de
parâmetros. Pode ter nenhum, apenas um ou
vários.

• Todo parametro deve especificar um tipo e um
identificador
• Cuidado com o número de parametros e os seus
respectivos tipos
Classes e Objetos
• Representação gráfica do segundo exemplo

LivroDeNotas2

+ MostrarMensagem(NomeDoCurso : String)
Classes e Objetos
• Porque preciso importar a classe SCANNER e não
importar a classe String ou System?
• Porque o pacote java.lang é importado
implicitamente em todo o programa java
Classes e Objetos
• Classes no mesmo pacote (mesma pasta) são
importadas implicitamente nos arquivos de códigofonte de outras classes no mesmo pacote

• Uma declaração import não será exigida quando
uma classe em um pacote utilizar outra domesmo
pacote
Classes e Objetos
• Variáveis locais:
• São as variáveis declaradas no corpo de um
método particular
• Só podem ser utilizadas nesse método.
• Quando um método termina, os valores de suas
variáveis locais são perdidos
Classes e Objetos
• Um objeto tem atributos que são portados com o
objeto quando ele é utilizado em um programa
• Os atributos existem antes de um método ser
chamado em um objeto e depois do método
completar a execução
Classes e Objetos
• Os atributos são representados como variáveis em
uma declaração de classe
• Variáveis são chamadas de CAMPOS
• São declaradas dentro de uma declaração de
classe, mas fora dos corpos das declarações de
método da classe
Classes e Objetos
• Variavel de instancia:
• É o campo que representa o atributo
• Ocorre quando cada objeto de uma classe
mantém sua própria cópia de um atributo
• Cada objeto (ou instancia) da classe tem uma
instância separada da variável na memória

• EXEMPLO NO NETBEANS
Classes e Objetos
• Private:
• Palavra chave
• Modificador de acesso
• Só são acessíveis a métodos da classe em que
são declarados
• Regra geral:
• Variáveis de instância devem ser declaradas
como private
• Métodos devem ser declarados como public
Classes e Objetos
• Procure declarar todas as variáveis no inicio do seu
código, isto deixa o programa legível
• Ocultamento de dados: ocorre quando um
programa
cria
um
objeto
de
uma
classe, encapsulando seus atributos, que só
poderão ser acessados por métodos da classe do
objeto
• 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
Classes e Objetos
• Todo campo tem um valor inicial padrão;
• Esse valor é fornecido pelo JAVA quando o
programador não especificar o valor inicial;
• O valor padrão de um tipo de dado STRING é o
NULL;
Classes e Objetos
• Recomenda-se inicializar STRINGS com “”, isto
é, uma String vazia
• Cliente de um objeto: é qualquer classe que
chama os métodos do objeto
Classes e Objetos
• As classes costumam fornecer métodos PUBLIC
para permitir a clientes da classe CONFIGURAR ou
OBTER valores de variáveis de instância PRIVATE

• Métodos SET e GET: métodos para configurar e
obter valores
• Nomenclatura padrão do JAVA
Classes e Objetos
• Representação gráfica do terceiro exemplo

LivroDeNotas3
- NomeDoCurso : String
+ setNomeDoCurso( NomeDoCurso : String)
+ getNomeDoCurso( ) : String
+ MostrarMensagem()
Classes e Objetos
• Tipos primitivos em
Java:
•
•
•
•
•
•
•
•

Boolean
Byte
Char
Short
Int
Long
Float
Double

• Todas
são
inicializadas com o
valor ZERO, menos
BOOLEAN que é
inicializada
com
FALSE ou TRUE
• Tipos NÃO primitivos
em Java:
• São os tipo por
referência
• Classes é um tipo não
primitivo
Classes e Objetos
• Variáveis de tipos por referência: são usadas para
armazenas as localizações de objetos na memória
do computador;

• Essas variáveis referenciam objetos no programa;
• Os objetos referenciados podem todos conter
muitas variáveis de instância e métodos;
Classes e Objetos
• São inicializadas por padrão com o valor NULL;
• NULL = referencia a nada

• Uma referencia a um objeto é requerida para
invocar os métodos do objeto
Classes e Objetos
• CONSTRUTOR
• É utilizado para inicializar um objeto de uma classe
quando o objeto for criado
• Java requer uma chamada de construtor para todo
objeto que é criado
Classes e Objetos
• NEW: chama o construtor da classe para realizar a
incialização
• O compilador JAVA fornece um construtor-padrão
sem parametros em qualquer classe que não inclua
explictamente um construtor.
Classes e Objetos
• EXEMPLO NO NETBEANS
• 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
Classes e Objetos
• Representação gráfica do exemplo 4

LivroDeNotas4
- NomeDoCurso : String
<< construtor >> LivroDeNotas4()
<< construtor >> LivroDeNotas4( Nome : String)
+ setNomeDoCurso( Nome : String)
+ getNomeDoCurso( ) : String
+ MostrarMensagem()
Classes e Objetos
• Números de ponto flutuante
• Variáveis double podem armazem números com
maior magnitude, mais detalhes e mais precisos
que as variáveis float
• Por padrão, Java trata todos os número de ponto
flutuante como DOUBLE e não como FLOAT
Classes e Objetos
• Números de ponto flutuante
• A maioria dos programadores JAVA usam DOUBLE
e não FLOAT
• O valor armazenado sempre será apenas uma
aproximação do valor exato
Classes e Objetos
• EXEMPLO NO NETBEANS
• Representação gráfica do exemplo 5:
Conta
- saldo : Double
<< construtor >> Conta( saldoInicial : Double)
+ Credito(conta : Double)
+ getSaldo() : Double
Métodos
• Técnica “Dividir pra conquistar”: melhor forma de
desenvolver um programa grande é construí-lo a
partir de pequenas e simples partes, ou módulos.
• Métodos, classes e pacotes: são os três tipos de
módulos em JAVA.
• Não reivente a roda! Utilize as APIs do Java e
códigos-fontes já existentes na comunidade, para
diminuir o tempo de desenvolvimento do seu
projeto.
Métodos
• API: Java Application Programming Interface. Fazem
parte do JDK 7. Coleções de classes pré-definidas:
• Cálculos matemáticos
• Manipulações de Strings
• Manipulações de Caracteres
• Operações de entrada/saída
• Operações de banco de dados
• Operações de rede
• Processamento de arquivos
• Verificação de erros
• Etc.
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
Métodos
• 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
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
Métodos
• Métodos static ou métodos de classe: realiza uma
tarefa que não depende de nenhum objeto, se
aplica à classe em que é declarado como um todo

• Não é necessário criar um objeto da classe antes
de usar os métodos contidos nela
• Exemplo da classe MATH, que contem as funções
matemáticas pré-definidas:
• Math.sqrt(numero);
Métodos
MÉTODO

DESCRIÇÃO

abs(x)

Valor absoluto de x

ceil(x)

Arredonda x para o maior inteiro não menor que x

cos(x)

Cosseno trigonométrico de x (x em radianos)

exp(x)

Método exponencial

floor(x)

Arredonda x para o maior inteiro não maior que x

log(x)

Logaritmo natural de x (base e)

max(x, y)

Maior valor de x e y

min(x, y)

Menor valor de x e y

pow(x, y)

x elevado à potência de y (isto é, xy)

sin(x)

Seno trigonométrico de x (x em radianos)

sqrt(x)

Raiz quadrada de x

tan(x)

Tangente trigonométrica de x (x em radianos)
Métodos
• Variáveis de classe:
• Campos em que cada objeto de uma classe não tem
uma instância separada do campo

• Campos static: permite que eles sejam acessados via
nome da classe e um ponto
• Quando objetos de uma classe que contém campos
static são criados, todos os objetos dessa classe
compartilham uma cópia dos campos static
Métodos
• Exemplo no netbeans
• Um método com muitos parametros 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 parametro
na lista de parametros de um metodo!
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
Métodos
• APIs Java
• Classes pré-definidas agrupadas em categorias

• Declarações import especificam as classes exigidas
para compilar um programa
Métodos
• Permite que os programadores utilizem o nome
simples da classe em vez do nome completamente
qualificado da classe

• Não preciso usar java.util.Scanner no código, basta
usar Scanner, desde que seja usado import
java.util.Scanner; no inicio da classe
Métodos
Pacote

Descrição

java.applet

Criação de applets (web)

java.awt

Java abstract window toolkit package. Manipulam GUIs

java.awt.event

Tratamento de eventos de GUI

java.io

Input/output

java.lang

LANG = LANGUAGE. Classes e interfaces java diversas

java.net

NET = NETWORKING. Classes para redes

java.text

TEXT . Manipula números, datas, caracteres e strings

java.util

UTIL = UTILITIES. Data, hora, números aleatórios,
armazenamento e processamento de dados, divisão de
strings.

java.swing

Componentes GUI swing

java.swing.event

Tratamento de evento swing
Métodos
• 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
Métodos
• Exemplo no netbeans
•O
compilador
distingue
os
sobrecarregados pelas suas assinaturas

métodos

• Distingue pelo nome do método, número do
método, tipos dos parametros e ordem dos
parametros
• Void metodo1(int a, float b) e void metodo1(float
a, int b) são diferentes!!!!
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!
Exercícios

Weitere ähnliche Inhalte

Was ist angesagt?

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
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çaDaniel Brandão
 
Stored Procedures and Triggers
Stored Procedures and TriggersStored Procedures and Triggers
Stored Procedures and Triggersflaviognm
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Aula 04 - Diagrama de casos de uso
Aula 04 - Diagrama de casos de usoAula 04 - Diagrama de casos de uso
Aula 04 - Diagrama de casos de usoLeinylson Fontinele
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
Conceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDConceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDVinicius Buffolo
 
Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosBanco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosNatanael Simões
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a InternetLeonardo Soares
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação Marcos Gregorio
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidJosé Alexandre Macedo
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebDaniel Brandão
 

Was ist angesagt? (20)

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
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
 
Stored Procedures and Triggers
Stored Procedures and TriggersStored Procedures and Triggers
Stored Procedures and Triggers
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Aula 04 - Diagrama de casos de uso
Aula 04 - Diagrama de casos de usoAula 04 - Diagrama de casos de uso
Aula 04 - Diagrama de casos de uso
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScriptCurso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
Conceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDConceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBD
 
Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosBanco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
POO - 16 - Polimorfismo
POO - 16 - PolimorfismoPOO - 16 - Polimorfismo
POO - 16 - Polimorfismo
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
Html Básico
Html BásicoHtml Básico
Html Básico
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento Android
 
Curso de Node JS Básico
Curso de Node JS BásicoCurso de Node JS Básico
Curso de Node JS Básico
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para Web
 

Andere mochten auch

Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Apresentação-Resumo sobre o Java Swing.
Apresentação-Resumo sobre o Java Swing.Apresentação-Resumo sobre o Java Swing.
Apresentação-Resumo sobre o Java Swing.Gabriel Jesus
 
POO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetosPOO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetosFelipe J. R. Vieira
 
POO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de ClassePOO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de ClasseFelipe J. R. Vieira
 
POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosPOO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosLudimila Monjardim Casagrande
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosLudimila Monjardim Casagrande
 
Slide de JAVA
Slide de JAVASlide de JAVA
Slide de JAVAEd W. Jr
 
Tratamento eventos
Tratamento eventosTratamento eventos
Tratamento eventoscla_venegas
 
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
 

Andere mochten auch (20)

Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Apresentação-Resumo sobre o Java Swing.
Apresentação-Resumo sobre o Java Swing.Apresentação-Resumo sobre o Java Swing.
Apresentação-Resumo sobre o Java Swing.
 
POO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetosPOO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetos
 
POO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de ClassePOO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de Classe
 
2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java
 
Java oo - aula 01
Java   oo - aula 01Java   oo - aula 01
Java oo - aula 01
 
Java e net beans
Java e net beans Java e net beans
Java e net beans
 
POO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de DesenvolvimentoPOO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de Desenvolvimento
 
Apostila java completo
Apostila java completoApostila java completo
Apostila java completo
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosPOO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a Objetos
 
Java Coleções
Java ColeçõesJava Coleções
Java Coleções
 
Aplicacoes Web Com AJAX
Aplicacoes Web Com AJAXAplicacoes Web Com AJAX
Aplicacoes Web Com AJAX
 
Poo (1)
Poo (1)Poo (1)
Poo (1)
 
Slide de JAVA
Slide de JAVASlide de JAVA
Slide de JAVA
 
Tratamento eventos
Tratamento eventosTratamento eventos
Tratamento eventos
 
Apostila Algoritmos
Apostila AlgoritmosApostila Algoritmos
Apostila Algoritmos
 
POO - Aula 09 - Herança
POO - Aula 09 - HerançaPOO - Aula 09 - Herança
POO - Aula 09 - Herança
 
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
 

Ähnlich wie Orientação a Objetos em Java

Ähnlich wie Orientação a Objetos em Java (20)

Poo
PooPoo
Poo
 
JAVA - Pacotes
JAVA - PacotesJAVA - Pacotes
JAVA - Pacotes
 
Pacotes
PacotesPacotes
Pacotes
 
Programação C - Aula 1
Programação C - Aula 1Programação C - Aula 1
Programação C - Aula 1
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
Aula3-POO-ConceitosBasicos.pdf
Aula3-POO-ConceitosBasicos.pdfAula3-POO-ConceitosBasicos.pdf
Aula3-POO-ConceitosBasicos.pdf
 
java_avancado.pdf
java_avancado.pdfjava_avancado.pdf
java_avancado.pdf
 
03 fundamentos java
03 fundamentos java03 fundamentos java
03 fundamentos java
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1
 
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
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Java7
Java7Java7
Java7
 
3- POO
3- POO3- POO
3- POO
 
Poo
PooPoo
Poo
 
Programação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaProgramação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em Java
 
Classes e objetos
Classes e objetosClasses e objetos
Classes e 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
 
Guia Rápido Java
Guia Rápido JavaGuia Rápido Java
Guia Rápido Java
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
 

Mehr von 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 etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine 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 EPPCElaine 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.pptxElaine 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 UFSCarElaine 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çõesElaine 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 ClassificationElaine 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.pdfElaine 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 escalonamentoElaine 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 bitsElaine 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çãoElaine Cecília Gatto
 

Mehr von 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
 

Kürzlich hochgeladen

Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptxpamelacastro71
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundonialb
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxBiancaNogueira42
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
Empreendedorismo: O que é ser empreendedor?
Empreendedorismo: O que é ser empreendedor?Empreendedorismo: O que é ser empreendedor?
Empreendedorismo: O que é ser empreendedor?MrciaRocha48
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfIedaGoethe
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESpatriciasofiacunha18
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASEdinardo Aguiar
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfEyshilaKelly1
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosAntnyoAllysson
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasCasa Ciências
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxacaciocarmo1
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 

Kürzlich hochgeladen (20)

Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptx
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundo
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
Empreendedorismo: O que é ser empreendedor?
Empreendedorismo: O que é ser empreendedor?Empreendedorismo: O que é ser empreendedor?
Empreendedorismo: O que é ser empreendedor?
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdf
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteiros
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de Partículas
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptx
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 

Orientação a Objetos em Java

  • 1. Orientação a Objetos Linguagem de Programação II Ciência da Computação Prof.ª Ms. Elaine Cecília Gatto
  • 2. Introdução • Em POO qualquer entidade tem características e comportamentos • Vantagens: • Reutilização de código • Confiabilidade • Facilidade de manutenção e extensão
  • 3. Introdução • OBJETOS: • pessoas, • animais, • plantas, • carros, • aviões, • edifício, • computadores, • sinais de trânsito, • fornos de microondas, • telefones, • casas, • sistemas de refrigerção à água, • etc.
  • 4. Introdução • Dois tipos de objetos • Animados • Inanimados; • Todos os objetos tem atributos: • Tamanho • Forma • Cor • Peso • etc
  • 5. Introdução • Todos os objetos tem comportamentos: • uma bola rola, • uma bola infla, • uma bola murcha • O bebê chora • O bebê dorme • O bebê engatinha • O bebê anda • etc
  • 6. Introdução • Diferentes objetos podem • exibir comportamentos semelhantes • ter atributos semelhantes • Exemplo: • Comparação entre bebês e adultos • Comparação entre humanos e chimpanzés • Portanto OO é semelhante àquilo que as pessoas utilizam para descrever os objetos do mundo real
  • 7. Introdução • Classes: objetos que tem as mesmas características • Exemplo: uma classe de veículos é composta por carros, caminhões e patins. • Herança: novas classes de objetos são derivadas de uma principal, absorvendo características desta e adicionando características únicas
  • 8. Introdução • Mensagens: • 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
  • 9. Introdução • Encapsulamento: • A orientação a objetos empacotam atributos e operações em objetos. • As operações são os comportamentos dos objetos. • Exemplo: podemos dirigir um carro sem conhecer os detalhes de como motores, transmissões, freios e sistemas funcionam internamente, mas sabemos para que serve o acelerador, o freio entre outros.
  • 10. Introdução • Em JAVA a unidade de programação é a CLASSE, a partir da qual os objetos são instanciados (ou criados) • Métodos: implementam operações semelhantes a funções na linguagem C • Campos: implementam atributos e são
  • 11. Introdução • Classes: contém campos e conjunto de métodos que manipulam os campos e fornecem serviços a outras classes • Podemos criar muitos objetos a partir de uma mesma classe • Associações: relacionamento entre classes
  • 12. Introdução • Reutilização de classes: o empacotamento permite isto, diminuindo custos, tempo e esforço, ajudando a construir sistemas mais confiáveis e eficientes. • Classes existentes são confiáveis pois: • Testes, • Depuração, • Ajustes de desempenho
  • 13. Classes e Objetos • Método: • Realiza uma tarefa em um programa (classe) • Descreve os mecanismos que realmente realizam suas tarefas • Oculta do usuário as tarefas complexas que ele realiza • Uma classe abriga um ou mais métodos
  • 14. Classes e Objetos • 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
  • 15. Classes e Objetos • Chamada de método: • 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
  • 16. Classes e Objetos • Atributos são especificados pelas variáveis de instância da classe. • EXEMPLO NO NETBEANS
  • 17. Classes e Objetos • public • É uma palavra chave que é um modificador de acesso • Significa que o método, classe ou objeto está diponível para o público, está acessível a todos • Por fim, pode ser chamado de fora do corpo da declaração de classe, por métodos ou outras classes
  • 18. Classes e Objetos • Void: • Palavra chave • O método realiza uma tarefa mas não retorna nenuma informação • Uma classe que contém o método MAIN é um aplicativo Java • O MAIN é um método especial que é chamado automaticamente pela JVM quando você executar o aplicativo.
  • 19. Classes e Objetos • A maioria dos métodos não são chamados automaticamente • A classe do exemplo não é um aplicativo Java pois não contém um método main. • Ela é simplesmente uma classe.
  • 20. Classes e Objetos • Static: um método static é especial porque pode ser chamado sem primeiro criar um objeto da classe em que o método é declarado • Não podemos chamar um método que pertence a outra classe até criar um objeto dessa classe
  • 21. Classes e Objetos • Cada nova classe que criamos, torna-se um novo tipo em Java que pode ser utilizado para declarar variáveis e criar objetos • New: cria um objeto da classe especificada à direita da palavra chave
  • 22. Classes e Objetos • Representação gráfica de uma classe LivroDeNotas + MostrarMensagem() NomeDaClasse Atributos Métodos
  • 23. Classes e Objetos • Métodos podem exigir um ou mais parametros que representam informações adicionais necessárias para realizar a tarefa • EXEMPLO NO NETBEANS • Ao declarar um método você deve especificar se o método requer dados para realizar a sua tarefa, ou não.
  • 24. Classes e Objetos • Portanto, o método pode ter uma lista de parâmetros. Pode ter nenhum, apenas um ou vários. • Todo parametro deve especificar um tipo e um identificador • Cuidado com o número de parametros e os seus respectivos tipos
  • 25. Classes e Objetos • Representação gráfica do segundo exemplo LivroDeNotas2 + MostrarMensagem(NomeDoCurso : String)
  • 26. Classes e Objetos • Porque preciso importar a classe SCANNER e não importar a classe String ou System? • Porque o pacote java.lang é importado implicitamente em todo o programa java
  • 27. Classes e Objetos • Classes no mesmo pacote (mesma pasta) são importadas implicitamente nos arquivos de códigofonte de outras classes no mesmo pacote • Uma declaração import não será exigida quando uma classe em um pacote utilizar outra domesmo pacote
  • 28. Classes e Objetos • Variáveis locais: • São as variáveis declaradas no corpo de um método particular • Só podem ser utilizadas nesse método. • Quando um método termina, os valores de suas variáveis locais são perdidos
  • 29. Classes e Objetos • Um objeto tem atributos que são portados com o objeto quando ele é utilizado em um programa • Os atributos existem antes de um método ser chamado em um objeto e depois do método completar a execução
  • 30. Classes e Objetos • Os atributos são representados como variáveis em uma declaração de classe • Variáveis são chamadas de CAMPOS • São declaradas dentro de uma declaração de classe, mas fora dos corpos das declarações de método da classe
  • 31. Classes e Objetos • Variavel de instancia: • É o campo que representa o atributo • Ocorre quando cada objeto de uma classe mantém sua própria cópia de um atributo • Cada objeto (ou instancia) da classe tem uma instância separada da variável na memória • EXEMPLO NO NETBEANS
  • 32. Classes e Objetos • Private: • Palavra chave • Modificador de acesso • Só são acessíveis a métodos da classe em que são declarados • Regra geral: • Variáveis de instância devem ser declaradas como private • Métodos devem ser declarados como public
  • 33. Classes e Objetos • Procure declarar todas as variáveis no inicio do seu código, isto deixa o programa legível • Ocultamento de dados: ocorre quando um programa cria um objeto de uma classe, encapsulando seus atributos, que só poderão ser acessados por métodos da classe do objeto • 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
  • 34. Classes e Objetos • Todo campo tem um valor inicial padrão; • Esse valor é fornecido pelo JAVA quando o programador não especificar o valor inicial; • O valor padrão de um tipo de dado STRING é o NULL;
  • 35. Classes e Objetos • Recomenda-se inicializar STRINGS com “”, isto é, uma String vazia • Cliente de um objeto: é qualquer classe que chama os métodos do objeto
  • 36. Classes e Objetos • As classes costumam fornecer métodos PUBLIC para permitir a clientes da classe CONFIGURAR ou OBTER valores de variáveis de instância PRIVATE • Métodos SET e GET: métodos para configurar e obter valores • Nomenclatura padrão do JAVA
  • 37. Classes e Objetos • Representação gráfica do terceiro exemplo LivroDeNotas3 - NomeDoCurso : String + setNomeDoCurso( NomeDoCurso : String) + getNomeDoCurso( ) : String + MostrarMensagem()
  • 38. Classes e Objetos • Tipos primitivos em Java: • • • • • • • • Boolean Byte Char Short Int Long Float Double • Todas são inicializadas com o valor ZERO, menos BOOLEAN que é inicializada com FALSE ou TRUE • Tipos NÃO primitivos em Java: • São os tipo por referência • Classes é um tipo não primitivo
  • 39. Classes e Objetos • Variáveis de tipos por referência: são usadas para armazenas as localizações de objetos na memória do computador; • Essas variáveis referenciam objetos no programa; • Os objetos referenciados podem todos conter muitas variáveis de instância e métodos;
  • 40. Classes e Objetos • São inicializadas por padrão com o valor NULL; • NULL = referencia a nada • Uma referencia a um objeto é requerida para invocar os métodos do objeto
  • 41. Classes e Objetos • CONSTRUTOR • É utilizado para inicializar um objeto de uma classe quando o objeto for criado • Java requer uma chamada de construtor para todo objeto que é criado
  • 42. Classes e Objetos • NEW: chama o construtor da classe para realizar a incialização • O compilador JAVA fornece um construtor-padrão sem parametros em qualquer classe que não inclua explictamente um construtor.
  • 43. Classes e Objetos • EXEMPLO NO NETBEANS • 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
  • 44. Classes e Objetos • Representação gráfica do exemplo 4 LivroDeNotas4 - NomeDoCurso : String << construtor >> LivroDeNotas4() << construtor >> LivroDeNotas4( Nome : String) + setNomeDoCurso( Nome : String) + getNomeDoCurso( ) : String + MostrarMensagem()
  • 45. Classes e Objetos • Números de ponto flutuante • Variáveis double podem armazem números com maior magnitude, mais detalhes e mais precisos que as variáveis float • Por padrão, Java trata todos os número de ponto flutuante como DOUBLE e não como FLOAT
  • 46. Classes e Objetos • Números de ponto flutuante • A maioria dos programadores JAVA usam DOUBLE e não FLOAT • O valor armazenado sempre será apenas uma aproximação do valor exato
  • 47. Classes e Objetos • EXEMPLO NO NETBEANS • Representação gráfica do exemplo 5: Conta - saldo : Double << construtor >> Conta( saldoInicial : Double) + Credito(conta : Double) + getSaldo() : Double
  • 48. Métodos • Técnica “Dividir pra conquistar”: melhor forma de desenvolver um programa grande é construí-lo a partir de pequenas e simples partes, ou módulos. • Métodos, classes e pacotes: são os três tipos de módulos em JAVA. • Não reivente a roda! Utilize as APIs do Java e códigos-fontes já existentes na comunidade, para diminuir o tempo de desenvolvimento do seu projeto.
  • 49. Métodos • API: Java Application Programming Interface. Fazem parte do JDK 7. Coleções de classes pré-definidas: • Cálculos matemáticos • Manipulações de Strings • Manipulações de Caracteres • Operações de entrada/saída • Operações de banco de dados • Operações de rede • Processamento de arquivos • Verificação de erros • Etc.
  • 50. 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
  • 51. Métodos • 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
  • 52. 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
  • 53. Métodos • Métodos static ou métodos de classe: realiza uma tarefa que não depende de nenhum objeto, se aplica à classe em que é declarado como um todo • Não é necessário criar um objeto da classe antes de usar os métodos contidos nela • Exemplo da classe MATH, que contem as funções matemáticas pré-definidas: • Math.sqrt(numero);
  • 54. Métodos MÉTODO DESCRIÇÃO abs(x) Valor absoluto de x ceil(x) Arredonda x para o maior inteiro não menor que x cos(x) Cosseno trigonométrico de x (x em radianos) exp(x) Método exponencial floor(x) Arredonda x para o maior inteiro não maior que x log(x) Logaritmo natural de x (base e) max(x, y) Maior valor de x e y min(x, y) Menor valor de x e y pow(x, y) x elevado à potência de y (isto é, xy) sin(x) Seno trigonométrico de x (x em radianos) sqrt(x) Raiz quadrada de x tan(x) Tangente trigonométrica de x (x em radianos)
  • 55. Métodos • Variáveis de classe: • Campos em que cada objeto de uma classe não tem uma instância separada do campo • Campos static: permite que eles sejam acessados via nome da classe e um ponto • Quando objetos de uma classe que contém campos static são criados, todos os objetos dessa classe compartilham uma cópia dos campos static
  • 56. Métodos • Exemplo no netbeans • Um método com muitos parametros 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 parametro na lista de parametros de um metodo!
  • 57. 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
  • 58. Métodos • APIs Java • Classes pré-definidas agrupadas em categorias • Declarações import especificam as classes exigidas para compilar um programa
  • 59. Métodos • Permite que os programadores utilizem o nome simples da classe em vez do nome completamente qualificado da classe • Não preciso usar java.util.Scanner no código, basta usar Scanner, desde que seja usado import java.util.Scanner; no inicio da classe
  • 60. Métodos Pacote Descrição java.applet Criação de applets (web) java.awt Java abstract window toolkit package. Manipulam GUIs java.awt.event Tratamento de eventos de GUI java.io Input/output java.lang LANG = LANGUAGE. Classes e interfaces java diversas java.net NET = NETWORKING. Classes para redes java.text TEXT . Manipula números, datas, caracteres e strings java.util UTIL = UTILITIES. Data, hora, números aleatórios, armazenamento e processamento de dados, divisão de strings. java.swing Componentes GUI swing java.swing.event Tratamento de evento swing
  • 61. Métodos • 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
  • 62. Métodos • Exemplo no netbeans •O compilador distingue os sobrecarregados pelas suas assinaturas métodos • Distingue pelo nome do método, número do método, tipos dos parametros e ordem dos parametros • Void metodo1(int a, float b) e void metodo1(float a, int b) são diferentes!!!!
  • 63. 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!