Ciao a tutti!
Sono novizio al java, ma devo impararlo per sostenere un esame.
Non sono nuovo alla programmazione, nel senso che ho nozioni su oo programming, incapsulamento, information hiding, ereditarietà, riuso, ottimizzazione, etc.
Vorrei sapere, proprio riguardo alcune delle cose succitate, come dividere il codice in classi.
La domanda può sembrare stupida, ma ecco il codice.
Vorrei, in pratica, dividere la grafica in una classe (una classe contenente le label e i bottoni) e gli eventi in un'altra (una classe che gestisca ciò che accade quando viene premuto il pulsante), per spezzettare il codice in modo adeguato e non monolitico.codice:package src; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JDesktopPane; import javax.swing.JLabel; import javax.swing.WindowConstants; import javax.swing.SwingUtilities; public class NewJFrame extends javax.swing.JFrame { private JDesktopPane jDesktopPane1; private JButton jButton1; private JLabel jLabel1; /** * Auto-generated main method to display this JFrame */ public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { NewJFrame inst = new NewJFrame(); inst.setLocationRelativeTo(null); inst.setVisible(true); } }); } public NewJFrame() { super(); initGUI(); } private void initGUI() { try { setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); { jDesktopPane1 = new JDesktopPane(); getContentPane().add(jDesktopPane1, BorderLayout.CENTER); { jLabel1 = new JLabel(); jDesktopPane1.add(jLabel1); jLabel1.setText("jLabel1"); jLabel1.setBounds(178, 86, 37, 16); } { jButton1 = new JButton(); jDesktopPane1.add(jButton1); jButton1.setText("jButton1"); jButton1.setBounds(244, 84, 59, 22); jButton1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { jButton1ActionPerformed(evt); } }); } } pack(); setSize(400, 300); } catch (Exception e) { e.printStackTrace(); } } private void jButton1ActionPerformed(ActionEvent evt) { System.out.println("jButton1.actionPerformed, event="+evt); jLabel1.setText("ciao"); } }
E poi... cosa ci metto nel main, dopo aver diviso il lavoro in classi?!
Grazie a tutti e scusate la domanda banalissima!![]()

Rispondi quotando