Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Eccezione

Hybrid View

  1. #1
    Quote Originariamente inviata da Alex'87 Visualizza il messaggio
    Eh??
    Allora all'interno del metodo
    public void actionPerformed(ActionEvent e) {

    devo aggiungere un IOException sennò non parte un metodo.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da signfra Visualizza il messaggio
    Allora all'interno del metodo
    public void actionPerformed(ActionEvent e) {

    devo aggiungere un IOException sennò non parte un metodo.
    Su actionPerformed non puoi dichiarare con throws, né chiaramente far uscire, eccezioni "checked". Se metti il throws di una eccezione checked, non ti compila nemmeno perché viola le regole di override. Punto, stop.

    Puoi far uscire una eccezione "unchecked" ma viene presumibilmente catturata dal framework che generalmente la stampa solo su System.out (o forse err? ... non ricordo). Il che comunque può non essere appropriato/utile.

    In linea di massima: da actionPerformed non deve uscire alcuna eccezione. Se il lavoro di actionPerformed implica il trattamento di eccezioni, la gestione va fatta lì dentro (nel contesto del actionPerformed comunque).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Quote Originariamente inviata da signfra Visualizza il messaggio
    Allora all'interno del metodo
    public void actionPerformed(ActionEvent e) {

    devo aggiungere un IOException sennò non parte un metodo.
    il metodo da eseguire all'interno della funziona sarebbe il seguente. il problema senza il try catch mi dice che devo aggiungere IOException con try catch ma mettendolo all'interno del try catch il metodo non parte.

    codice:
     public void insert(String Nome,String Cognome,String Codice,String Email)throws IOException{
             
            final int SBAP_PORT = 8888;
           Socket s = new Socket("localhost", SBAP_PORT);
           InputStream in = s.getInputStream();
           OutputStream out = s.getOutputStream();
           BufferedReader reader = new BufferedReader(
              new InputStreamReader(in));
           PrintWriter writer = new PrintWriter(out); 
           
           
           
           String command = Nome;
           System.out.print("Sending: " + command);
           writer.print(command);
           writer.flush();
           
           
           
           
           
          
     
           s.close(); 
         }

  4. #4
    Quote Originariamente inviata da signfra Visualizza il messaggio
    il metodo da eseguire all'interno della funziona sarebbe il seguente. il problema senza il try catch mi dice che devo aggiungere IOException con try catch ma mettendolo all'interno del try catch il metodo non parte.

    codice:
     public void insert(String Nome,String Cognome,String Codice,String Email)throws IOException{
             
            final int SBAP_PORT = 8888;
           Socket s = new Socket("localhost", SBAP_PORT);
           InputStream in = s.getInputStream();
           OutputStream out = s.getOutputStream();
           BufferedReader reader = new BufferedReader(
              new InputStreamReader(in));
           PrintWriter writer = new PrintWriter(out); 
           
           
           
           String command = Nome;
           System.out.print("Sending: " + command);
           writer.print(command);
           writer.flush();
           
           
           
           
           
          
     
           s.close(); 
         }
    codice:
    e per fare ciò  try {
                          
                            
                            client.insert("123", null, null, null);
                            
                            
                            
                           
                            
                            
                            
                            
                            
                            
                            
                            
                            
                            
    
                        } catch (IOException ex) {
    
                        ex.printStackTrace(writer);
                        
                        }

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 © 2026 vBulletin Solutions, Inc. All rights reserved.