Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Luiz Phelipe Steinbach

Associação em Java

Recommended Posts

E aí gente, tudo bem? Sou novo na Linguagem Java e não entendi muito bem o processo de Associação em Java, tenho um Problema para resolver, só que... Começo ele tudo certo, porém não consigo dar continuidade, não consigo fazer esse modo ser ASSOCIADO, não sei como faço isso, se alguém puder me ajudar e me dar uma luz agradeço desde já!

 

Tenho 2 Classes e 1 Classe Principal para Executar as outras 2.

 

O Enunciado do meu problema é esse

 

De forma a trabalhar este conceito desenvolva um programa que resolva o problema abaixo:

armazenados junto aos dados dos sócios. Os dados do amigo são nome e ano de nascimento.

O clube pretende realizar torneios de futebol para os amigos dos sócios, de forma a divulgar a estrutura do clube. Para isso deseja convidar os amigos para participar dos torneios. O primeiro torneio a ser realizado será de futebol para os amigos de sócios nascidos entre 1960 e 1970.

Você deve fazer um programa que permita cadastrar os dados dos sócios deste Clube (para efeito de teste a quantidade pode ser 5). O programa deve ter um menu com a opção para o cadastro dos dados do sócio (nome, endereço, telefone e dados do amigo) e outra opção para uma listagem dos amigos dos sócios que nasceram entre 1960 e 1970, com o nome do respectivo sócio.

 

Classe Amigo

package UsoSocio;

public class Amigo {
	
	private String nomedoamigo;
	private int anodoamigo;
	
	public Amigo(){
		
	}
	
	public Amigo(String snomedoamigo, int ianodoamigo){
		this.nomedoamigo=snomedoamigo;
		this.anodoamigo=ianodoamigo;
	}

	public String getNomedoamigo() {
		return nomedoamigo;
	}

	public void setNomedoamigo(String nomedoamigo) {
		this.nomedoamigo = nomedoamigo;
	}

	public int getAnodoamigo() {
		return anodoamigo;
	}

	public void setAnodoamigo(int anodoamigo) {
		this.anodoamigo = anodoamigo;
	}

	
}

Classe Sócio

package UsoSocio;

public class Socio {

	String nomedosocio, endereco;
	int telefone;
	private Amigo amigo;
	
	public Socio(){
		
	}
	
	public Socio(String snomedosocio, String sendereco, int itelefone, Amigo aamigo){
		this.nomedosocio=snomedosocio;
		this.endereco=sendereco;
		this.telefone=itelefone;
		this.amigo=aamigo;
	}

	public String getNomedosocio() {
		return nomedosocio;
	}

	public void setNomedosocio(String nomedosocio) {
		this.nomedosocio = nomedosocio;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public int getTelefone() {
		return telefone;
	}

	public void setTelefone(int telefone) {
		this.telefone = telefone;
	}

	public Amigo getAmigo() {
		return amigo;
	}

	public void setAmigo(Amigo amigo) {
		this.amigo = amigo;
	}
	
	
	
	
	
	
	
}

Classe Principal de Execução

package UsoSocio;

import javax.swing.JOptionPane;

public class UsoSocio {

	public static void main(String[] args) {
		
		
		Socio s=new Socio();
		s.setNomedosocio(JOptionPane.showInputDialog("Digite o Nome do Sócio"));
		s.setEndereco(JOptionPane.showInputDialog("Digite o Endereço do Sócio"));
		s.setTelefone(Integer.parseInt(JOptionPane.showInputDialog("Digite o Telefone do Sócio")));
		
		Amigo a=new Amigo();
		a.setNomedoamigo(JOptionPane.showInputDialog("Digite o Nome do Amigo"));
		a.setAnodoamigo(Integer.parseInt(JOptionPane.showInputDialog("Digite o Ano de Nascimento do Amigo")));
		
		
		
		
		
		
		
		
	}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Luiz,

 

A associação é o que se costuma dizer quando há relacionamento entre classes. A associação pode ser uma composição ou uma agregação. Ela pode ser unidirecional ou bidirecional. Para maiores informações sobre os tipos de associação, veja: http://imasters.com.br/artigo/18901/uml/uml-composicao-x-agregacao

 

Sobre o seu problema, caso o amigo não existe sem o sócio, trata-se de uma composição. O fato de as duas classes se relacionarem já é uma ssociação.

 

Att,

Daniel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Luiz, na classe Sócio você já está usando Associação com a propriedade amigo, conforme nosso colega djeremias citou.

A única coisa que você ainda não fez foi adicionar o Amigo no Sócio.

s.setAmigo(a);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.