Академический Документы
Профессиональный Документы
Культура Документы
Linguagem de Montagem
Prof. Marcelo Nogueira
Prof. Fábio Vieira do Amaral
Linguagem de Montagem 1
Objetos e classes
• Objetos
– Representam ‘coisas’ do mundo real ou
do domínio de algum problema
(exemplo: “o carro vermelho ali no
estacionamento”).
• Classes
– Representam todos os tipos de objetos
(exemplo: “carro”).
Linguagem de Montagem 2
Métodos e parâmetros
• Objetos têm operações que podem
ser invocadas (o Java as chama de
métodos).
• Métodos podem ter parâmetros para
passar informações adicionais
necessárias para sua execução.
Linguagem de Montagem 3
Outras observações
• Várias instâncias podem ser criadas a
partir de uma única classe.
• Um objeto tem atributos: valores
armazenados em campos.
• A classe define quais campos um
objeto tem, mas todo objeto
armazena seu próprio conjunto de
valores (o estado do objeto).
Linguagem de Montagem 4
Código-fonte
• Toda classe tem um código-fonte
(código Java) associado a ela que
define seus detalhes (campos e
métodos).
Linguagem de Montagem 5
Valores de retorno
• Métodos podem retornar um
resultado via um valor de retorno.
Linguagem de Montagem 6
Corpo da Classe
• O corpo das classes contém campos,
construtores e métodos.
Linguagem de Montagem 7
Campos
• Campos armazenam valores que
determinam o estado de um objeto.
Linguagem de Montagem 8
Construtores
• Construtores inicializam objetos.
Linguagem de Montagem 9
Métodos
• Métodos implementam o
comportamento dos objetos.
Linguagem de Montagem 10
Linguagem de Montagem 11
Condicional (if)
• Objetos podem tomar decisões via
atribuições condicionais (if).
• Um teste de verdadeiro ou falso
permite que uma entre duas ações
alternativas seja tomada.
Linguagem de Montagem 12
Abstração e modularização
• Abstração é a habilidade de ignorar
detalhes sobre as partes para concentrar a
atenção no nível mais alto de um
problema.
• Modularização é o processo de dividir um
todo em partes bem definidas, que podem
ser construídas e examinadas
separadamente e que interagem de uma
maneira bem definida.
Linguagem de Montagem 13
Linguagem de Montagem 14
Diagrama de classes
• O diagrama de classes mostra as
classes de uma aplicação e os
relacionamentos entre elas. Ele
fornece as informações sobre o
código-fonte. Apresenta a
visualização estática de um
programa.
Linguagem de Montagem 15
Tipo primitivo
• Os tipos primitivos em java são
os tipos não-objeto. Tipos como
int, char, boolean, double e
long são os mais comuns. Os
tipos primitivos não têm
nenhum método.
Linguagem de Montagem 16
Linguagem de Montagem 17
parâmetro formal
Na classe ClockDisplay:
hours = new NumberDisplay(24);
parâmetro real
Linguagem de Montagem 18
Sobrecarga
• Uma classe pode conter mais de
um construtor ou mais de um
método do mesmo nome,
contanto que cada um tenha um
conjunto distinto de tipos de
parâmetro.
Linguagem de Montagem 19
Chamadas de método
objeto.nomeDoMétodo( lista-de-parâmetros )
Linguagem de Montagem 20
Chamadas de método
public void timeTick()
{
minutes.increment();
if(minutes.getValue() == 0) {
// acaba de voltar a zero!
hours.increment();
}
updateDisplay();
}
Linguagem de Montagem 21
Linguagem de Montagem 22
Método interno
/**
* Atualiza a string interna que
* representa o mostrador.
*/
private void updateDisplay()
{
displayString =
hours.getDisplayValue() + ":" +
minutes.getDisplayValue();
}
Linguagem de Montagem 23
Linguagem de Montagem 24
Chamadas de método
• Chamadas de método interno
updateDisplay();
…
private void updateDisplay()
Linguagem de Montagem 25
Sobrecarga de Nome
• Quando o mesmo nome é
utilizado para duas entidades
diferentes. (name overloading)
Linguagem de Montagem 26
Sobrecarga de Nome
• Exemplo: Uma classe possui três
campos, chamados: from, to e
message. O construtor tem três
parâmetros, também chamados
from, to e message.
Linguagem de Montagem 27
Sobrecarga de Nome
• O que fazer? -> usar “this”
• A expressão this referencia o
objeto atual.
Linguagem de Montagem 28
Sobrecarga de Nome
• Escrevendo this.from
referenciamos o campo from no
objeto atual. Assim essa
construção nos fornece um
meio de referenciar o campo
em vez do parâmetro com o
mesmo nome.
Linguagem de Montagem 29
Depurador
• Um depurador (debugger) é
uma ferramenta de software
que ajuda a examinar como ua
aplicação executa. Ele pode ser
utilizado para localizar bugs.
Linguagem de Montagem 30