Como usar um ArrayList de objeto em outras classes?
2 respostasResolvido
classesdesktopjavaarraylist
E
Edson_Sousa
Boa noite a todos.
Estou tentando criar um programa salvando em memoria, onde eu coloco o produto em um jdialog e consigo ver em uma tabela num jframe principal.
Consegui criar o objeto e a lista e salvar no jframe principal , so que eu quero chamar um jdialog para ficar maus facil de criar os campos e tudo mais, e so deixa no frame principal a tabela pra vizualizar.
Vocês podem me ajudar nisto?
Não sei quanto você conhece de programação, mas uma ideia é, se esse ArrayList é um atributo da classe principal, você pode criar métodos de acesso à ele, ou mesmo métodos acessórios para incluir ou editar elementos.
Exemplo simplificado:
classJanelaPrincipalextendsJFrame{privateArrayListprodutos;publicvoidadicionarProduto(Produtopro){produtos.add(pro);}// cria e chama o dialogprivatevoidchamarDialog(){newMeuDialog(this).setVisible(true);}}classMeuDialogextendsJDialog{privateJanelaPrincipaljanelaPrincipal;publicMeuDialog(JanelaPrincipalprincipal){janelaPrincipal=principal;}// método pra ser chamado ao clicar no botão salvar do JDialogvoidsalvarProduto(){// cria produto e preenche dadosProdutopro=newProduto();// salva na lista da janela principaljanelaPrincipal.adicionarProduto(pro);}}
Indo um pouco além, você pode ter classes acessórias que contém o arraylist e os métodos para acessar (incluir, alterar, listar, excluir), separadas das janelas, e tanto sua janela principal quanto o jdialog usam essas classes para manipular a lista de produtos. Essas classes auxiliares funcionam como um repositório (que é um dos termos para se referir à esse tipo de estrutura).