Olá, favor sugestão para OO!

2 respostas
U

Gente estava focado em algoritmo e agora estarei focando em OO.

Favor qm tiver sugestões para melhorar o código abaixo e se eu fiz algo q poderia ser feito de uma melhor forma, favor postar aqui, obrigado.

[url]http://pastebin.com/H41qZc3L[/url]
public class Cachorro {

	String nome;
	int tamanho;
	String raca;
	String cor;
	int idade;
	boolean velho = false;

	public void latir () {
		System.out.println("Rex says: Au Au");
	}
}
//--------------------------------
public class CachorroTeste {

	public static void main(String[] args){

		Cachorro rex = new Cachorro();

		// Cachorro Chico
		rex.nome = "Chico";
		rex.tamanho = 40;
		rex.raca ="Pincher";
		rex.cor ="Preto";
		rex.idade = 5;
	
		System.out.println("O cachorro "+rex.nome+" tem "+rex.tamanho+"cm, é da Raça "+rex.raca+" e a sua cor é "+rex.cor+".");
		rex.latir();

		while(true){
			if (rex.idade <= 10) {
				rex.idade ++;
				System.out.println("A idade do "+rex.nome+" e "+rex.idade+".");
			}
			else{
				rex.velho = true;	
				System.out.println("O "+rex.nome+" esta velho.");
			break;
			}
		} // fim do while
	}
}

2 Respostas

adriano_si

Fala cara… primeira dica… estude sobre encapsulamento e como podes proteger as tuas variáveis dos Objetos Cahorro que vieres a instanciar…

Abs [] 8)

A

utroz, conforme o adriano_si comentou, é interessante encapsular sua classe, entre outros detalhes segue.

  • Encapsular os atributos da classe cachorro
  • Verificar se não existe a necessidade de um constructor mais apropriado, que defina valores a propriedades básica da classe do cachorro
  • Encapsular a regra do cachorro, no seu exemplo quem verifica se o cachorro é velho, é a classe main, ficaria melhor ter um método na classe Cachorro (isVelho()), outra que incrementaria a idade do cachorro (envelhecer())
  • Quando eu vou mostrar uma mensagem com quantidades grandes de concatenação, procuro utilizar o método String.format

E mais algumas coisas, mas acredito que isto ja vai deixar seu código legal.

Att

Criado 21 de fevereiro de 2011
Ultima resposta 21 de fev. de 2011
Respostas 2
Participantes 3