Duvida Java?

3 respostas
J

Galera vou postar o codigo aqui, para voces me ajudarem…

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * FormularioColecao.java
 *
 * Created on 28/08/2009, 12:19:19
 */

package visao;

import java.util.ArrayList;
import java.util.Vector;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import modelo.Colecao;

/**
 *
 * @author Desconhecido
 */
public class FormularioColecao extends javax.swing.JFrame {
    Colecao colecao;
    DefaultTableModel tabelaColecao = new DefaultTableModel();
    ArrayList<Colecao> colecaocds = new ArrayList<Colecao>();

    /** Creates new form FormularioColecao */
    public FormularioColecao() {

        tabelaColecao.addColumn("Nome");
        tabelaColecao.addColumn("Estilo");
        tabelaColecao.addColumn("Numeros de Faixas");
        initComponents();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jbIncluir = new javax.swing.JButton();
        jbExcluir = new javax.swing.JButton();
        jbLimpar = new javax.swing.JButton();
        jPanel2 = new javax.swing.JPanel();
        jlNome = new javax.swing.JLabel();
        jlEstilo = new javax.swing.JLabel();
        jlNumeroFaixas = new javax.swing.JLabel();
        jtfNome = new javax.swing.JTextField();
        jtfEstilo = new javax.swing.JTextField();
        jtfNumeroFaixas = new javax.swing.JTextField();
        jPanel3 = new javax.swing.JPanel();
        jPanel4 = new javax.swing.JPanel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Cadastro Coleção");

        jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        jbIncluir.setText("Incluir");
        jbIncluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbIncluirActionPerformed(evt);
            }
        });

        jbExcluir.setText("Excluir");
        jbExcluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbExcluirActionPerformed(evt);
            }
        });

        jbLimpar.setText("Limpar");
        jbLimpar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbLimparActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jbIncluir)
                    .addComponent(jbExcluir)
                    .addComponent(jbLimpar))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jbIncluir)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 29, Short.MAX_VALUE)
                .addComponent(jbExcluir)
                .addGap(28, 28, 28)
                .addComponent(jbLimpar)
                .addContainerGap())
        );

        jPanel2.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        jlNome.setText("Nome:");

        jlEstilo.setText("Estilo:");

        jlNumeroFaixas.setText("Número Faixas:");

        jtfNome.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jtfNomeActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jlNumeroFaixas)
                    .addComponent(jlNome)
                    .addComponent(jlEstilo))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jtfNumeroFaixas, javax.swing.GroupLayout.DEFAULT_SIZE, 370, Short.MAX_VALUE)
                    .addComponent(jtfEstilo, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 370, Short.MAX_VALUE)
                    .addComponent(jtfNome, javax.swing.GroupLayout.DEFAULT_SIZE, 370, Short.MAX_VALUE))
                .addContainerGap())
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jlNome)
                    .addComponent(jtfNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(30, 30, 30)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jlEstilo)
                    .addComponent(jtfEstilo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 28, Short.MAX_VALUE)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jlNumeroFaixas)
                    .addComponent(jtfNumeroFaixas, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(19, 19, 19))
        );

        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
        jPanel3.setLayout(jPanel3Layout);
        jPanel3Layout.setHorizontalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 4, Short.MAX_VALUE)
        );
        jPanel3Layout.setVerticalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 18, Short.MAX_VALUE)
        );

        jTable1.setModel(tabelaColecao);
        jScrollPane1.setViewportView(jTable1);

        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
        jPanel4.setLayout(jPanel4Layout);
        jPanel4Layout.setHorizontalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(22, Short.MAX_VALUE))
        );
        jPanel4Layout.setVerticalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(206, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(39, 39, 39)
                        .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(503, 503, 503))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(452, 452, 452)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
        setBounds((screenSize.width-656)/2, (screenSize.height-336)/2, 656, 336);
    }// </editor-fold>                        

    private void jbLimparActionPerformed(java.awt.event.ActionEvent evt) {                                         
    jtfNome.setText("");
    jtfEstilo.setText("");
    jtfNumeroFaixas.setText("");
    }                                        

    private void jtfNomeActionPerformed(java.awt.event.ActionEvent evt) {                                        
        
    }                                       
    private void jbIncluirActionPerformed(java.awt.event.ActionEvent evt) {                                          

    Colecao c = new Colecao();
    c.setNome(jtfNome.getText());
    c.setEstilo(jtfEstilo.getText());
    c.setNumeroFaixas(jtfNumeroFaixas.getText());
//Aqui no código acima estamos carregando, setando as variaveis.
    colecao = c;
    colecaocds.add(c);
    jtfNome.setText("");
    jtfEstilo.setText("");
    jtfNumeroFaixas.setText("");

    Vector vetorColecao = new Vector();
    vetorColecao.add(c.getNome());
    vetorColecao.add(c.getEstilo());
    vetorColecao.add(c.getNumeroFaixas());

    tabelaColecao.addRow(vetorColecao);
    JOptionPane.showMessageDialog(null,"CD Incluido com Sucesso!" );
    }                                         

    private void jbExcluirActionPerformed(java.awt.event.ActionEvent evt) {                                          
   

    }                                         

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new FormularioColecao().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JPanel jPanel4;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTable1;
    private javax.swing.JButton jbExcluir;
    private javax.swing.JButton jbIncluir;
    private javax.swing.JButton jbLimpar;
    private javax.swing.JLabel jlEstilo;
    private javax.swing.JLabel jlNome;
    private javax.swing.JLabel jlNumeroFaixas;
    private javax.swing.JTextField jtfEstilo;
    private javax.swing.JTextField jtfNome;
    private javax.swing.JTextField jtfNumeroFaixas;
    // End of variables declaration                   

}

Dae vem a pergunta… por que que o colecão recebe c.
codigo abaixo…

colecao = c;
    colecaocds.add(c);
    jtfNome.setText("");
    jtfEstilo.setText("");
    jtfNumeroFaixas.setText("");

    Vector vetorColecao = new Vector();
    vetorColecao.add(c.getNome());
    vetorColecao.add(c.getEstilo());
    vetorColecao.add(c.getNumeroFaixas());

    tabelaColecao.addRow(vetorColecao);
    JOptionPane.showMessageDialog(null,"CD Incluido com Sucesso!" );

Sei que é um codigo longo, mais se puderem me ajudar… agradeço…

3 Respostas

felipehand

Pelo que eu vi, vc declarou a Colecao colecao, mas nao inicializou ou criou instancia nela, nem nada.
Ai quando vc criou a Colecao c, fez as atribuições e fez colecao = c; vc atribuiu à colecao a instancia de c.
Não sei se entendi ou fiz entender.

abs

edmarr

Pelo que eu entendi

colecao = c;

vc declarou colecao como um referencia do tipo Colecao porem , ela nao esta apontando para nenhum objetos ela ira apontar somente apartir da linha acima .

c = aos objetos Carregados

Pelo que eu entendi foi isto , o programa esta com erro ?

evertonsilvagomesjav

porque “c” é um objeto do tipo coleção…

na linha 240 se nao me engano ele instancia esse objeto

Colecao c = new Colecao();
Criado 2 de setembro de 2009
Ultima resposta 2 de set. de 2009
Respostas 3
Participantes 4