[RESOLVIDO]ajuda poo construtor e instanciar

6 respostas
Arthur2010

Boa tarde amigos, sou novo por aqui e estou com uns problemas na parte de poo, como eu não tinha visto java antes acho q ficou meio pesado começar direto com poo no java… mas vamos lá: Criei as classes dono,bicho, atividade e nota_atividade, então estou com problemas pq na classe animal tenho que ter os atributos do dono, e na classe nota_atividade tenho que ter os atributos do bicho e da atividade, os atributos das classes ja estão todos arrumados, eu só não sei como “puxar” os atributos de uma classe em outra classe.

Grato!

6 Respostas

fesaab

Basta criar um atributo a mais nas classes para referenciar a outra classe que vc quer. Ex:

class Bicho{
	private String nome;
	private Dono dono;
	
	public void gritarDono(){
		System.out.println("VEM AKI " + dono.getNome() + "!!!");
	}
	
	//...
}

a mesma coisa para a classe nota_atividade:

class Nota_Atividade{
	private Bicho bicho;
	private Atividade atividade;
	private float nota;
	
	public void mostrarNota(){
		System.out.println("O bicho: " + bicho.getNome() + " tirou " + String.valueOf(nota) + " na atividade " + atividade.getDescricao());
	}
	
	//...
}
Arthur2010

Obrigado!

fesaab

Coloque a tag [RESOLVIDO] na frente do título do tópico se vc não tiver mais dúvidas.

Arthur2010

Oi denovo, e como faço na classe bicho para usar um get dono?
para retornar os atributos do dono.
grato!

fesaab

vc pode retornar o próprio objeto dono, assim:

class Bicho{
	private String nome;
	private Dono dono;
	
	public void gritarDono(){
		System.out.println("VEM AKI " + dono.getNome() + "!!!");
	}

	public Dono getDono(){
		return dono;
	}
	
	//...
}

e quando for utilizar vc pode fazer assim:

Bicho b = new Bicho();
//outros parametros de inicializacao

System.out.println(b.getDono().getNome());

//ou ainda
Dono d = b.getDono();
System.out.println(d.getNome());

ou entao vc pode retornar o atributo do dono direto da classe Bicho (o que eu nao acho muito legal, mas vou mostrar como é):

class Bicho{
	private String nome;
	private Dono dono;
	
	public void gritarDono(){
		System.out.println("VEM AKI " + dono.getNome() + "!!!");
	}

	public String getNomeDono(){
		return dono.getNome();
	}
	
	//...
}

ai para usar vc faz assim:

Bicho b = new Bicho();
//outros parametros de inicializacao

System.out.println(b.getNomeDono());
Arthur2010

Obrigado!

Criado 10 de abril de 2010
Ultima resposta 10 de abr. de 2010
Respostas 6
Participantes 2