Erro - Associação!

5 respostas
O
olá Pessoal, estou com o seguinte erro, "setNomeDepart(java.lang.String)" no meu código abaixo:
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);
}
}

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

5 Respostas

Luiz-SP

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?

O

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

brothermclaud

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á.

O

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();
}
}
J

como vc faria se fosse varios departamentos?

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

Criado 19 de setembro de 2007
Ultima resposta 24 de set. de 2007
Respostas 5
Participantes 4