Olá galera,
Estive pensando em criar uma classe recicladora de outras classe, como assim? e por quê?
Tive a necessidade de fazer isso, pois os meus projetos pareciam que estavam muito sujos ao criar,
por exemplo numa classe eu tinha que fazer várias importações e criar vários objetos de outras classes
pois eu uso várias ferramentas feita por mim mesmo, então tinha que criar 10 objetos dentro duma classe..
Pra mim achei que fica muito ruim, então o que eu resolvi fazer é criar uma classe onde dentro dela, eu crio
todos objetos necessários para toda aplicação assim toda vez que eu for utilizar qlqr objeto eu chamo o objeto
principal, é como se fosse uma cadeia..
ficaria assim;
/**
* @description Classe onde contém todos objetos do projeto, para uso
* no objeto global.
*/
package classes;
import classes.componentes.clsFormulario;
/**
* @data 27/11/2012
* @author Charleston Anjos
* @version 12.101
* @alteração 28/11/2012
*/
public class clsObjeto{
public clsFormulario formulario = new clsFormulario();
public clsComandos comandos = new clsComandos();
public clsMensagens mensagens = new clsMensagens();
public clsCSV csv = new clsCSV();
public clsCriptografia criptografia = new clsCriptografia();
}
Quando eu for utilizar em qualquer outra classe
deste modo eu nao tenho q ficar criando varios objetos na minha classe ta funcionando belezinha..public class Teste(){
clsObjeto objeto = new clsObjeto();
objeto.mensagens.enviarMensagem("nova mensagem");
objeto.comando.testar();
objeto.criptografia.criptografar("texto a ser criptografado");
}
O problema ta aki...
/**
* @data 28/11/2012
* @author Charleston Anjos
* @version 12.101
* @alteração 28/11/2012
*/
public class clsCSV implements interfaces.interfaceCSV {
private clsObjeto objeto = new clsObjeto();
public void CriaCSV() throws Exception {
try{
//Criação de um buffer para a escrita em uma stream
BufferedWriter StrW = new BufferedWriter(new FileWriter("C:\\tabela.csv"));
//Escrita dos dados da tabela
StrW.write(objeto.criptografia.Criptografar("Nome;Telefone;Idade\n"));
StrW.write(objeto.criptografia.Criptografar("Juliana;6783-8490;23\n"));
StrW.write(objeto.criptografia.Criptografar("Tatiana;6743-7480;45\n"));
StrW.write(objeto.criptografia.Criptografar("Janice;6909-9380;21"));
//Fechamos o buffer
StrW.close();
}catch (FileNotFoundException ex){
ex.printStackTrace();
}catch (IOException e){
e.printStackTrace();
}
}
Ocorre esse erro
Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
at classes.clsCSV.(clsCSV.java:21)
at classes.clsObjeto.(clsObjeto.java:20)