Instanciar classes

1 resposta
M
public class ClientePF extends Cliente{
	private String cpf="";
	private double limite=0;
	Utilitario ut = new Utilitario();
	
	//contrutor ClientePF
	public ClientePF(){	}
	public ClientePF(String nome,String cep,String cidade,String estado,String cpf,double limite){
		super(nome,cep,cidade,estado);
		this.cpf=cpf;
		this.limite=0;
	}
	public String getCpf(){
		return cpf;
	}
	public void setCpf(String cpf){
		this.cpf=cpf;
	}
	public double getLimite(){
		return limite;
	}
	public void setLimite(double limite){
		this.limite=limite;
	}
	
	//imprimir clientePF	
	public void imprimeClientePF(){
		super.imprimirCliente();
		System.out.println("CPF....: "+getCpf());
		System.out.println("Limite.: "+getLimite());
	}	
}
public class Utilitario {
	
	ClientePF cpfi = new ClientePF();


    public boolean validarCpf(String cpfDigitado){
    	return(cpfDigitado.equals(cpfi.getCpf()));
    }
 
    public boolean validarEstado(String estadoDigitado){
    	if(estadoDigitado.length()==2){
    		return true;
    	}else{
    		return false;
    	}
    }
    
    public String entradaString(String label){
		String frase="";
		BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));
		System.out.print(label);
		 try{
		   frase=entrada.readLine();	
		 }catch(IOException error){
		 	System.out.println("Error...");
		 }
		 return(frase);
	}
    public void menu(){
	    System.out.println("------Menu de opções-----");
	    System.out.println(" 1 - Cadastrar Cliente");
	    System.out.println(" 2 - Cadastrar Produto");
	    System.out.println(" 3 - Efetuar Venda");
	    System.out.println(" 4 - Exibir Relatórios");
	    System.out.println(" 5 - Sair");
    }
    public void subMenu(){
    	System.out.println("----Exibir Relatórios----");
    	System.out.println("1-Exibir lista de Clientes");
    	System.out.println("1-Exibir lista de Produtos");
    	System.out.println("1-Exibir lista de Vendas");
    	System.out.println("1-Exibir lista de clientes de um estado"); 	
    }
    
    
}
public class executaVenda{
	 public static void main(String args[]){
	 	int opcao=0;
	 	int tipo_cliente=0;
	 	ClientePF cp = new ClientePF();
	 	Scanner entrada = new Scanner(System.in);
	 }
}

at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)
at ClientePF.(ClientePF.java:4)
at Utilitario.(Utilitario.java:9)

tipo ele da um erro que fica mostrando um monte de vez

como faço para corrigir isso?? qual a solução?

1 Resposta

T

Voce ta instanciando o ClientePf e dentro dele instancia o Utilitario e dentro dele o ClientePf e dentro dele o Utilitario e dentro dele…
Entendeu???
A Classe ClientePf instancia a Utilitario q instancia denovo a CLientePf e isso fico numa instanciação recurvisa, isso não naum faz sentido.
Verifique se realmente é isso que vc deseja fazer…

Criado 25 de novembro de 2009
Ultima resposta 25 de nov. de 2009
Respostas 1
Participantes 2