Aula 14 (FT9)

Propaganda
Linguagens de Programação Orientadas a Objetos
Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa
Marco Fagundes
[email protected]
Aula 14 - O Modelo de Objetos e o Tipo String
http://www.ufpa.br/sampaio/bd2003/lpoo
Elaborado pelos Professores: Ricardo Santos e Marco Fagundes
 Marco Fagundes
1 de 19
Roteiro



Modelo de Referência a Objetos
Modelo de Referência a Objetos - Tipo String
Modelo de Referência a Objetos - Tipo Array
2 de 19
Modelo de Referência a Objetos




Cada variável de um tipo de classe, não contém o valor
do objeto
Em vez disso, a variável contém uma referência ou
ponteiro, para indicar o local de memória onde o objeto
foi armazenado
Quando a variável é declarada não se cria o objeto na
memória, mas somente reserva-se o local de memória
para uma referência a um objeto
As instância de objetos devem ser criadas manualmente
3 de 19
Modelo de Referência a Objetos

Para ilustrar o modelo de referência a objetos será utilizado o Tipo
String.
• Strings são objetos especiais na linguagem Java.
• Não necessitamos utilizar a palavra new para instanciarmos uma
String.
• Strings são objetos imutáveis.
• As variáveis do tipo String armazenam uma referência para um
objeto String ao invés da própria String.
4 de 19
Modelo de Referência a Objetos - Tipo String
String t1 = ”Turma1";
Objeto String
Anônimo
t1
Variável de
Referência
”Turma1"
5 de 19
Modelo de Referência a Objetos - Tipo String
String t1 = ”Turma1";
String t2 = ”Turma1";
t1==t2 ??
t1.equals(t2) ??
t1
t2
”Turma1"
Variáveis de Referência
Java trata todos os objetos String
anônimos com o mesmo conteúdo como
um objeto String anônimo que tem várias
referências
6 de 19
Modelo de Referência a Objetos - Tipo String
String t1 = new String(”Turma1”);
String t2 = ”Turma1";
t1
t1==t2 ??
t1.equals(t2) ??
”Turma1"
t2
”Turma1"
Variáveis de Referência
Objeto String
Anônimo
7 de 19
Modelo de Referência a Objetos - Tipo String
t1 = t2;
t1
t1==t2 ??
t1.equals(t2) ??
”turma1"
Variáveis de Referência
t2
Objeto String
Anônimo
8 de 19
Modelo de Referência a Objetos - Tipo String
t2 = ”Turma2";
t1
Variáveis de Referência
”Turma1"
”Turma2"
t2
O objeto String é imutável,
mas a referência pode mudar.
Caso não exista referência para
o objeto o GC destrói
9 de 19
Modelo de Referência a Objetos - Tipo String

Os operadores + e += podem ser utilizados com Strings.

São utilizados para concatenação de Strings.

O resultado desta operação é sempre uma nova String, uma vez que
Strings são imutáveis.
10 de 19
Modelo de Referência a Objetos - Tipo String
String s = "Java";
s
Variável de
Referência
"Java"
11 de 19
Modelo de Referência a Objetos - Tipo String
s += "1.4.1";
s
Variável de
Referência
"Java"
"Java1.4.1"
12 de 19
Modelo de Referência a Objetos - Tipo Array

No caso de Arrays de tipos primitivos, o array armazena
o próprio valor atribuído a seus elementos
Por exemplo:
int[] numSala;
numSala = new int[4];
numSala
0 0 0 0
0
1
2
3
Valores
objeto array int [ ]
Índices
13 de 19
Modelo de Referência a Objetos - Tipo Array

Atribuindo valores para os elementos do array
numSala[0]=
numSala[1]=
numSala[2]=
numSala[3]=
101;
102;
103;
104;
numSala
101102103104
0
1
2
3
Valores
objeto array int [ ]
Índices
14 de 19
Modelo de Referência a Objetos - Tipo Array

No caso de “Arrays de Objetos”, o que temos na verdade
é um array de Referências a Objetos
Por exemplo:
Turma[] repTurma;
repTurma = new Turma[3];
repTurma
-
-
-
0
1
2
15 de 19
Modelo de Referência a Objetos - Tipo Array
repTurma[0]= new Turma(“001”,”LPOO”);
repTurma[1]= new Turma(“002”,”ABD”);;
repTurma[2]= new Turma(“003”,”SBD”);;
repTurma
-
-
-
0
1
2
001
LPOO
003
002
SBD
ABD
16 de 19
Módulo de Fundamentos

Módulo de Fundamentos
• Objetivo: Apresentar conceitos básicos e avançados da orientação a
objetos, os ambientes Java e Delphi e sua utilização no
desenvolvimento de GUIs
• Meta: Desenvolver uma aplicação (Java ou Delphi) com uma
GUI oferecendo as operações básicas de cadastro (incluir,
excluir, alterar e consultar) utilizando uma estrutura de dados
para armazenar objetos
17 de 19
Módulo de Fundamentos

Conteúdo
O que foi visto??
• Conceitos da Orientação a Objetos
• Ambiente JDK e Delphi
• Construção de GUI em Java e Delphi
• Programação Orientada a Eventos
• Estrutura de Dados (Array) e Tipo String
• Classe, Objeto, Atributos e Métodos
• Compartilhamento de Recursos (Dados e Operações) entre
Classes
• Recursos Avançados de GUI e Criação de Objetos
18 de 19
Módulo de Fundamentos


Duração: 13 Aulas
• Início: 01/04/2003
• Término: 29/04/2003
Datas Importantes
• Entrega do 1º Exercício: 23/04/2003
• Exame Escrito:29/04/2003
• Entrega da 1ª Etapa do Projeto Final: 06/05/2003
19 de 19
Download