Abaixo seguem as implementações das classes Alongado
e Entremeado
que representam as espécies de A Coisa.
idade
- número inteiro que inicia com 1 e representa a idade da Coisa;vivo
- indica se a coisa está viva ou morta.mostrar
- mostra no console um caractere que representa A Coisa; este caractere será diferente conforme a idade e se A Coisa está viva ou não;crescer
- aumenta a idade da coisa;morrer
- a coisa se torna morta.Esta versão foi modificada em relação à original de tal modo que os métodos crescer
e morrer
não mostram A Coisa.
In [1]:
public class Alongado {
int idade;
boolean vivo;
public Alongado(int idade, boolean vivo) {
this.idade = idade;
this.vivo = vivo;
}
public void mostrar() {
String saida = "";
if (!vivo)
saida = "#";
else
switch (idade) {
case 1: saida = "."; break;
case 2: saida = ","; break;
case 3: saida = "-"; break;
default: if (idade >= 4)
saida = "~";
break;
}
System.out.println(saida);
}
public void crescer() {
idade++;
}
public void morrer() {
vivo = false;
}
}
Out[1]:
In [2]:
public class Entremeado {
int idade;
boolean vivo;
public Entremeado(int idade, boolean vivo) {
this.idade = idade;
this.vivo = vivo;
}
public void mostrar() {
String saida = "";
if (!vivo)
saida = "#";
else
switch (idade) {
case 1: saida = "."; break;
case 2: saida = "+"; break;
case 3: saida = "@"; break;
default: if (idade >= 4)
saida = "*";
break;
}
System.out.println(saida);
}
public void crescer() {
idade++;
}
public void morrer() {
vivo = false;
}
}
Out[2]:
In [3]:
Alongado a1 = new Alongado(2, true),
a2 = new Alongado(1, false);
Entremeado e1 = new Entremeado(3, true),
e2 = new Entremeado(1, true);
a1.mostrar();
a2.mostrar();
e1.mostrar();
e2.mostrar();
a1.crescer();
a1.mostrar();
a2.crescer();
a2.mostrar();
e1.crescer();
e1.mostrar();
e2.crescer();
e2.mostrar();
e1.morrer();
e1.mostrar();
e2.crescer();
e2.mostrar();
e2.crescer();
e2.mostrar();
e2.crescer();
e2.mostrar();
Out[3]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]: