Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225

    [JAVA] Passare uno String a un'altra classe: come fare?

    sto sviluppando con un amico un client di posta elettronica testuale, e io sto curando lo sviluppo di 2 classi. Quella di cui mi sto occupando ora è una classe che permette all'utente di immettere tramite tastiera i comandi, e che poi restituisce a Email (la classe principale) uno String; ecco il codice fin'ora elaborato della classe in questione (la classe si chiama InOut)

    codice:
    import java.io.*; 
    
    public class InOut
    
    { 
    
     public static void main(String[] args)
    
     { 
    
      String riga = ""; 
      try
    
      { 
    
        InputStreamReader ISR = new InputStreamReader(System.in); 
        BufferedReader BR = new BufferedReader(ISR); 
        riga = BR.readLine(); 
    
      }
      
      catch(IOException ioex)
      { 
      System.exit(0); 
      } 
     
     }
     
    }
    così come è ora questa classe non passa nessuno String a Email, questo dovrebbe farlo tramite il metodo readLine dell'oggetto BufferedReader.


    Ma come posso fare ciò?

    Grazie!
    ...credi sia aria quella che stai respirando?

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    Email mail = new Email(riga);
    Email deve avere un costruttore
    public Email(String msg) { ... }

  3. #3
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    Email avrà sicuramente un costruttore, ma quello che vloglio chiederti è nella parentesi graffe dove tu hai messo i puntini di sospensione, cosa dovrà andarci? Lo string che restituisce automaticamente InOut a Email? :quipy:
    ...credi sia aria quella che stai respirando?

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    public Email(String msg) {
    System.out.print(msg);
    }
    ci va quello che ci deve fare con la stringa

  5. #5
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    in definitiva il codice sarà questo?

    codice:
    // InOut.java
    
    import java.io.*; 
    
    public class InOut
    
    { 
    
     public static void main(String[] args)
    
     { 
    
      String riga = ""; 
      try
    
      { 
    
        InputStreamReader ISR = new InputStreamReader(System.in); 
        BufferedReader BR = new BufferedReader(ISR); 
        riga = BR.readLine(); 
    
      }
      
      catch(IOException ioex)
      { 
      System.exit(0); 
      } 
     
     Email mail = new Email(riga);
     public Email(String msg)
     {
     System.out.print(msg); 
     }
     
     }


    ...credi sia aria quella che stai respirando?

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837

    devi fare un file che si chiama Email.java
    public class Email {
    public Email(String msg) {
    System.out.print(msg);
    }
    }

  7. #7
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    già altrimenti quando lo compilo mi darà erore! Dico bene?

    Cmq il codice è posizionato bene?
    ...credi sia aria quella che stai respirando?

  8. #8
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    questo sì
    Email mail = new Email(riga);

  9. #9
    Utente di HTML.it L'avatar di MOBILUK
    Registrato dal
    Apr 2001
    Messaggi
    225
    ho provato a creacre un sempice file Email, che contiene solo il costruttore (come hai suggerito tu), lo compilato correttamente e ho tentato di compilare InOut.java, ma mi da errore

    codice:
    // InOut.java
    
    import java.io.*; 
    
    public class InOut
    
    { 
    
     public static void main(String[] args)
    
     { 
    
      String riga = ""; 
      try
    
      { 
    
        InputStreamReader ISR = new InputStreamReader(System.in); 
        BufferedReader BR = new BufferedReader(ISR); 
        riga = BR.readLine(); 
    
      }
    
     Email mail = new Email(riga);
     public Email(String msg)
     {
     System.out.print(msg); 
     }
    
      
      catch(IOException ioex)
      { 
      System.exit(0); 
      } 
     
    
     
     }
     
    }
    - mi da errore alla riga 34 (c'è solo la parentesi graffa)
    - mi da errore alla riga 25 alla p di public Email (String msg)
    - e alla riga 14 'try without 'catch' or finally' e mi segnala la t di try



    grazie per la pazienza
    ...credi sia aria quella che stai respirando?

  10. #10
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    così dovrebbe andare
    codice:
    import java.io.*; 
    
    public class InOut { 
    
     public static void main(String[] args) { 
    
      String riga = ""; 
      try {
        InputStreamReader ISR = new InputStreamReader(System.in); 
        BufferedReader BR = new BufferedReader(ISR); 
        riga = BR.readLine(); 
      }
      catch(IOException ioex) { 
        System.exit(0); 
      } 
      Email mail = new Email(riga);
     }
    }
    la classe Email e questa devono stare nella stessa directory

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