Olá, favor sugestão para OO!

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.

http://pastebin.com/H41qZc3L

[code]
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
}

}[/code]

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

Abs [] 8)

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