Codigos Java
Codigos Java
//Atributos
//Métodos
this.nome = nome;
this.CNPJ = CNPJ;
this.nr_departamentos = 0;
this.nr_discentes = 0;
nr_departamentos++;
} else {
==============================================================
Acabamos de estudar sobre como funcionam as relações entre classes em Java. Então, com
base no código da classe “Escola”, desenvolva a implementação da classe “Endereco” com os
atributos “nome_rua” e “numero”.
========================================================================
Resposta:
this.setNomeRua(nome_rua);
this.numero=numero;
this.nome_rua = nome_rua;
return this.nome_rua;
this.numero = numero;
return this.numero;
=====================================================================
Para testarmos se a classe está correta, podemos acrescentar a função “main” dentro da classe
Endereco da seguinte forma:
System.out.println(ender.getNomeRua()+", "+ender.getNumero());
}
Cujo resultado da execução será:
rua X, 7
======================================================================
Roteiro de prática
Passo 1
class Aluno {
//Atributos
//Métodos
this.nome = nome;
this.idade = idade;
this.nome = nome;
this.idade = idade;
return this.nome;
====================================================================
Passo 2
public Referencia ( ) {
a2 = a1;
a2.definirNome("Flávia");
manipulaAluno ( a1 );
aluno.definirNome("Márcia");
==========================================================
Passo 3
=================================================================
Vamos entender o que acontece seguindo passo a passo a execução do código visto
anteriormente.
A classe principal desse código é a classe “Referencia”. Logo, já sabemos que o nome do
arquivo deve ser “Referencia.java”. Dentro dela, há o método estático “main”, no qual criamos
um objeto do tipo “Referencia”. Nesse momento, a JVM passa a instanciar dois objetos do tipo
Aluno. Sendo que o objeto “a1” fica com o estado dos atributos “nome” e “idade”,
respectivamente, dados por "Carlos" e "20".
Já o objeto “a2” fica com “nome” recebendo “Ana” e “idade” recebendo “23”. Ou seja, temos
dois objetos distintos (“a1” e “a2”), cujos estados também são distintos.
a2 = a1;
Que significa que “a1” e “a2” são referências para os objetos criados, ou seja, não é um caso de
atribuição. Por isso que, ao modificarmos o estado do objeto “a2”, também afetamos o estado
do objeto “a1”.
Outro ponto interessante ocorre quando chamamos o método “manipulaAluno”, pois, como
dissemos, a passagem de objetos é sempre feita por referência. Logo, a variável “aluno” na
assinatura do método “manipulaAluno” vai receber a referência guardada por “a1”. Desse
momento em diante, todas as operações feitas usando “aluno” ocorrem no mesmo objeto
referenciado por “a1” que tem impacto também no objeto “a2”.
Apesar do Java oferecer esse recurso de referência de objetos, devemos evitá-lo, pois o código
pode ficar confuso e difícil de dar manutenção posteriormente. Bem, agora, chegou a hora de
praticar!