UCSal – Bacharelado em Informática
Tópicos Especiais em Informática II
Profa. Semíramis Assis
2015.2
Método


Define ações a serem realizadas pelo
objeto. Precisam ter nome coerente
com a ação que irá ser executada e
iniciar com letra minúscula.
Sempre pertencem à uma classe, nunca
isolados, e não podem ser criados
dentro de outros métodos.
Método
• Exemplo de método com retorno:
• Método sem retorno:
Método

Exercício! Criar os seguintes métodos
na classe Árvore:



trocaNomePopular;
eFrutoArvore;
produzFlor;
Escopo



Determina a visibilidade dos atributos em
uma classe.
Escopo local - Variáveis declaradas dentro
de métodos, existem apenas enquanto o
método estiver sendo executado.
Escopo global - Variáveis declaradas na
classe, fora de todos os métodos, podem ser
acessadas por todos os métodos e existem
enquanto o objeto existir.
Escopo
• Atributos da classe possuem escopo Global:
• Atributos criados em métodos possuem escopo local:
Escopo

Exercício! Fazer uma calculadora
simples, com as quatro operações
básicas, utilizando os conceitos de
classes , métodos e atributos.
Estado


Definido pelos valores dos atributos das
classes em determinados momentos
durante a execução da aplicação.
Atributos possuem estado inicial,
quando o objeto ao qual pertencem é
instanciado, estado final, quando o
objeto é destruído, etc.
Estado
• Estado Inicial das variáveis do método Potencia:
• Estado após execução da operação:
Operadores Aritméticos

Em Java, temos os seguintes
operadores aritméticos:




+ , - , *, / : soma, subtração,
multiplicação e divisão.
== , != : igual a e diferente de.
<,>,<=,>= :menor que,maior que, menor
ou igual a, maior ou igual a.
&&, || : and e or.
Modificadores de Acesso


Atributos e classes devem ter ser controlados pelos métodos
das classes, ao invés de diretamente pelos programadores
usuários.
Existem os seguintes modificadores de acesso:






Public – Todas as classes podem acessar e/ou modificar.
Private – Apenas a classe a qual pertence pode acessar e/ou
modificar.
Protected – Apenas a classe e classes do mesmo pacote podem
acessar e/ou modificar.
Static – A variável pode ser acessada por todas as instâncias de
objetos desta classe, possuindo o mesmo valor. Se o valor for
alterado em alguma das instância, todas verão o valor alterado.
Abstract – Declara métodos e classes abstratas.
Final – Variável, método ou classe tem valor fixo (constante) e não
pode ser alterado.
Modificadores de Acesso



Exercício! Criar um método resultadoAlterado
com o modificador private na classe Soma da
calculadora que some 20% ao resultado
obtido. É possível acessar este método na
classe principal?
Alterar o modificador de acesso do método
resultadoAlterado para public. É possível
acessar este método na classe principal?
Alterar o modificador de acesso do método
para protected. É possível acessar na classe
principal? E na classe Subtrair ?
Encapsulamento



Capacidade de “esconder” do usuário
final os detalhes de implementação de
uma classe.
Utilização dos Modificadores de Acesso
garantem esta propriedade.
Somente operações especializadas ou
dedicadas manipulam os dados ocultos.
Troca de Mensagens



Ocorre quando um objeto chama
métodos de outro objeto.
Alguns métodos irão te retornar
respostas, que poderão ser
manipuladas para executar operações.
Outros métodos não terão retorno,
apenas executarão o comando
realizado.
Troca de Mensagens
• Exemplo de troca de mensagens:
• Método Potencia na classe Multiplica:
Entrada de Dados

Em Java, a entrada de dados é feita
utilizando Readers, como no exemplo
abaixo:
• Leitura de dados do teclado, digitado pelo usuário:
Construtores



Necessários para criar instâncias das
classes e inicializar seus atributos.
Atributos não inicializados podem
causar erros durante execução das
aplicações.
Código dos construtores é executado
quando a instância é criada, antes de
qualquer outro código do objeto.
Construtores
• Exemplo de construtor vazio:
• Exemplo de vários construtores em uma mesma classe:
Construtores


Exercício! Inicializar os atributos da
classe Árvore através de construtores. O
que aconteceu com os métodos get e
set?
Retirar os construtores e executar a
classe. O que aconteceu?
Construtores


Exercício! Inicializar as classes Soma,
Subtração, Multiplicação e Divisão com
construtores, colocando valores fixos
nos operandos.
Receber os valores dos operandos do
usuário e passar para as classes via
construtor.
Dúvidas?
Download

POO_aula5_6_OK