Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 46
  1. #1

    [Java] Variabili globali

    Ho bisogno di una dritta perchè credo che mi sto perdendo in un bicchier d'acqua.
    Ho un package con 3 classi, diciamo A, B, C.
    Nella classe A è presente il main e alcuni metodi. In questa classe (nel main) è presente una variabile String.
    Io vorrei importare nella classe C il valore di questa variabile, è possibile?
    Se si come dovrei fare?

    Spero di si....

    Grazie

  2. #2
    metodo get.
    qualcosa del genere:
    codice:
    public class A {
        private String var = "ciao";
        
        public A(String var) {
            this.var = var;
        }
        
        public String getVar() {
            return var;
        }
    }
    nella classe C richiami il metodo get.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    codice:
    public class A {
        private String var = "ciao";
        
        public void A(String var) {
            this.var = var;
        }
        
        public String getVar() {
            return var;
        }
    }

    occhio al valore di ritorno del set.
    In generale qui limiti la visibilità e accedi ai contenuti tramite i metodi get e set.
    RTFM Read That F*** Manual!!!

  4. #4
    Ma il set in teoria non mi serve.

    Cmq funziona lo stesso il metodo get se la variabile in questione si trova all'interno di un ciclo in cui il suo valore cambia ad ogni iterazione?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    cioè? Allora il get non fa altro che restituirti il valore che assume la variabile in esame al momento in cui fai la richiesta.
    RTFM Read That F*** Manual!!!

  6. #6
    Si si ok, ma io questa variabile ce l'ho all'interno del main della classe A ed è contenuta in un ciclo for che quindi cambia ad ogni iterazione.

    Chiamando quindi il metodo get nella classe C otterrò sicuramente tutti i valori diversi ogni volta?

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    1,123
    Se assegni nella classe A un valore ad una variabile String e la passi alla classe C, e poi cambi il suo valore, la variabile nella classe C è indipendente, ergo, richiamando il suo metodo ottieni sempre il solito valore... non cambia se non lo cambi.

    Se come ho capito all'interno della classe A e precisamente nel for, cambi ogni volta il valore della String; ogni operazione con le stringhe crea un nuovo oggetto String.

  8. #8
    Ho fatto così, nella classe A ho dichiarato la variabile
    codice:
    private static String nome;
    e fuori dal main il metodo
    codice:
    public static String getNome() { 		return nome; 	}
    Nella classe C non so come richiamare il metodo getNome però....

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    in C devi avere un'istanza di A e farai

    codice:
    private A varA; 
    private String stringa; 
    
    //....
    
    stringa = varA.getA();
    //....
    RTFM Read That F*** Manual!!!

  10. #10
    Originariamente inviato da valia
    in C devi avere un'istanza di A e farai

    codice:
    private A varA; 
    private String stringa; 
    
    //....
    
    stringa = varA.getA();
    //....
    Facendo come dici te mi da un'errore di sintassi sulla dichiarazione della variabile stringa, perchè?

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.