Erro - Associação!

olá Pessoal, estou com o seguinte erro, “setNomeDepart(java.lang.String)” no meu código abaixo:

[code]
import javax.swing.*;
public class CadastroProdLojaDepart{
public static void main(String args[])
{
Depart d[]=new Depart[3];
d[0] = new Depart("","");
d[1] = new Depart("","");
d[2] = new Depart("","");

		ProdLoja p=new ProdLoja();
		p.setNome(JOptionPane.showInputDialog("Entre com o Nome do Produto"));
		p.setPreco(Double.parseDouble(JOptionPane.showInputDialog("Entre com o Preço")));
		p.setCodigo(Integer.parseInt(JOptionPane.showInputDialog("Entre com o Código")));
		p.setNomeDepart(JOptionPane.showInputDialog("Entre com o Nome do Departamento")); // aqui da erro
		
		ProdLoja p2=new ProdLoja();
		p2.setNome(JOptionPane.showInputDialog("Entre com o Nome do Produto"));
		p2.setPreco(Double.parseDouble(JOptionPane.showInputDialog("Entre com o Preço")));
		p2.setCodigo(Integer.parseInt(JOptionPane.showInputDialog("Entre com o Código")));
		p2.setNomeDepart(JOptionPane.showInputDialog("Entre com o Nome do Departamento")); // igual acima
		
		ProdLoja p3=new ProdLoja();
		p3.setNome(JOptionPane.showInputDialog("Entre com o Nome do Produto"));
		p3.setPreco(Double.parseDouble(JOptionPane.showInputDialog("Entre com o Preço")));
		p3.setCodigo(Integer.parseInt(JOptionPane.showInputDialog("Entre com o Código")));
		p3.setNomeDepart(JOptionPane.showInputDialog("Entre com o Nome do Departamento")); // igual acima
		
		JOptionPane.showMessageDialog(null,"Nome e Departamento dos Produtos \n" + p.getNome()
  • " “+p.getNomeDepartCad() + “\n” + p2.getNome() +” "+ p2.getNomeDepartCad()
  • “\n” + p3.getNome() +" "+ p3.getNomeDepartCad());
    System.exit(0);
    }
    } [/code]

Tenho a associação (“ProdLoja” 0*…1"Depart"),
Alguém tem uma dica pra resolver meu erro.
Exemplos com Collentions ou ArrayList me ajudariam…

Cara não entendi sua pergunta, mas acho que o erro tá aqui

   p3.setNomeDepart(JOptionPane.showInputDialog("Entre com o Nome do Departamento"));  

Não deveria ter uma String ao invés de uma classe JOptionPane?

Pois é Luiz, tentei, fazer assim:

String NomeDepart= JOptionPane.showInputDialog("Entre com o nome do departamento");

será que pode ser assim?
Fiquei em dúvida se o nome do departamento, ñ teria que vir da class Depart

Sendo assim:

p3.setNomeDepart( JOptionPane.showInputDialog("Entre com o Nome do Departamento") );

ou assim:

String NomeDepart= JOptionPane.showInputDialog("Entre com o nome do departamento");

tantp faz, pois o showInputDialod, da forma como você colocou, retorna uma String,

public static String showInputDialog(Object message) throws HeadlessException { return showInputDialog(null, message); }

Oidnil, não consegui entender qual erro você está tendo. Talvez serja interessante colocar o código das classes Depart e ProdLoja para ver se o erro vem de lá.

Olá brothermclaud, segue abaixo os objetos:
estou com erro no retorno do "nome do departamento pelo objeto ProdLoja.

// class Depart
public class Depart{
	private String nomedepart, gerente;
	public Depart(){	
		nomedepart="";
		gerente="";
		}
		public Depart(String snomedepart, String sgerente){
			nomedepart=snomedepart;
			gerente=sgerente;
			}			
			public void setNomeDepart(String snomedepart){
				nomedepart=snomedepart;
			}
			public void setGerente(String sgerente){
				gerente=sgerente;
			}			
			public String getNomeDepart(){
				return nomedepart;
			}
			public String getGerente(){
				return gerente;
			}
}
// class ProdLoja
public class ProdLoja{
private int codigo;
private String nome;
private Double preco;
private Depart depart;

public ProdLoja(){
codigo=0;
nome="";
preco=0.0;
depart=null;
}
public void setCodigo(int icodigo){
codigo=icodigo;
}
public void setNome(String snome){
nome=snome;
}
public void setPreco(double dpreco){
preco=dpreco;
}
public int getCodigo(){
return codigo;
}
public String getNome(){
return nome;
}
public double getPreco(){
return preco;
}
public void setDepart (Depart sdepart){
depart=sdepart;
}
public Depart getDepart(){
return depart;
}
public String getNomeDepartCad(){
return depart.getNomeDepart();
}
}

como vc faria se fosse varios departamentos?

pois estou com uma questão paracida com esta e parei na seleção dos departamentos.