Visualizzazione dei risultati da 1 a 10 su 17

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    104

    [JAVA] Metodi getter e setter di una classe che estende ArrayList

    Devo scrivere un progetto per la gestione degli esami degli studenti di un corso di laurea.
    In parole povere ho creato una classe Studente contenente i dati anagrafici, una classe Elenco (extends ArrayList) in cui, appunto, inserisco tutti gli studenti.

    Ho qualche problema con i metodi set e get dell'ultima classe descritta cioè: quando inserisco nella maschera di input i dati degli studenti nei vari textField e clicco il button "Aggiungi", in console ricevo l'errore:
    - Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
    at studenti.ElencoStudenti.getMatricola(ElencoStudent i.java:41)"

    Allego l'immagine della maschera e inserisco il frammento di codice del bottone "Aggiungi" e il codice relativo alla classe Elenco

    codice:
    private void bottoneAggiungiActionPerformed(java.awt.event.ActionEvent evt) {                                                
            // TODO add your handling code here:
            
            e.addStudente(matricola.getText(), cognome.getText(), nome.getText(), appello.getSelectedItem(), voto.getSelectedItem());
            
            if (d.exists() != true) {
                d.newDoc();
                try {
                    d.scrivi(e, i);
                } catch (IOException ex) {
                    Logger.getLogger(mainFrame.class.getName()).log(Level.SEVERE, null, ex);
                }
            } else {            
                    
                try {          
                    d.scrivi(e, i);
                } catch (IOException ex) {
                    Logger.getLogger(mainFrame.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
           i++;
           matricola.setText("");
           cognome.setText("");
           nome.setText("");
           appello.setSelectedIndex(0);
           voto.setSelectedIndex(0);
        }


    codice:
    public class ElencoStudenti extends ArrayList {
        
        public void addStudente(String matricola, String cognome, String nome, Object appello, Object voto) {
            Studente st = new Studente(matricola, cognome, nome, appello, voto);
            this.add(st);
        }
        
        public void setMatricola(int i, String matricola) {
            this.set(i, matricola);
        }
        
        public void setCognome(int i, String cognome) {
            this.set(i, cognome);
        }
        
        public void setNome(int i, String nome) {
            this.set(i, nome);
        }
        
        public void setVoto(int i, Object voto) {
            this.set(i, voto);
        }
        
        public void setAppello(int i, Object appello) {
            this.set(i, appello);
        }
        
        public String getMatricola(int i) {
            return this.getMatricola(i);
        }
        
        public String getCognome(int i) {
            return this.getCognome(i);
        }
        
        public String getNome(int i) {
            return this.getNome(i);
        }
        
        public Object getVoto(int i) {
            return this.getVoto(i);
        }
        
        public Object getAppello(int i) {
            return this.getAppello(i);
        }
    }
    Qualcuno potrebbe indirizzarmi verso la giusta via?
    PS. spero di non aver sbagliato nulla nella creazione di tale topic (è il mio primo messaggio non mi mangiate!)
    Immagini allegate Immagini allegate

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.