Olá, estou fazendo um exercício simples, e tenho q responder umas questões, queria que vcs verificassem se as minhas respostas estão certas, eu tenho quaaase certeza q o q eu pensei está certo, mas tenho medo de ter usado termos errados para me expressar.
Obrigado…!
- O que há de estranho no programa abaixo?
class estranho
{
public static final int LIMITE = 10;
public static void main(String [] args)
{
int i = 0;
int j = 0;
if (i < LIMITE)
{
while (i < LIMITE)
{
i++;
}//while
}//if
}//main
}//estranho
A variável “j”, nunca foi lida e o objeto “public static final int LIMITE = 10;” não possue nome nem marcadores de começo e fim.
- Você consegue explicar porque o valor de J foi alterado, e de j nã̃o, apó́s antes da segunda impressã̃o? Se sim explique.
[code]class Inteiro {
private int valor;
Inteiro() {
valor = 0;
}
Inteiro (int v) {
valor = v;
}
public void incrementa() {
valor ++;
}
public int getValor() {
return valor;
}
} // class Inteiro
class Referencias {
public static void main (String args[]) {
Inteiro I = new Inteiro(20);
Inteiro J = I;
int i = 10;
int j = i;
System.out.println("Inteiro i: " + i);
System.out.println("Inteiro j: " + j);
System.out.println("Inteiro I: " + I.getValor());
System.out.println("Inteiro J: " + J.getValor());
i++;
I.incrementa();
System.out.println("Inteiro i: " + i);
System.out.println("Inteiro j: " + j);
System.out.println("Inteiro I: " + I.getValor());
System.out.println("Inteiro J: " + J.getValor());
} // nain()
} // class Referencias[/code]
A variável “j” é do tipo primitivo e não é alterada porque após receber o valor de “i” ela não recebe nenhum outro valor, mas “J” é um TAD que recebe o valor de outro TAD ( Inteiro J = I; ), assim quando “I” for alterada, “J” também será.