Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [java] passaggio per riferimento, variali che si riferiscono allo stesso oggetto

    Salve!
    sto studiando Java, ma mi è rimasto un vuoto sul passaggio dei parametri.
    É possibile in Java passare un oggetto per riferimento, ovvero che conservi le modifiche
    subito del metodo, dopo che la sua esecuzione è terminata?... come accade per il passaggio per i puntatori in c/C++. Se si, come?
    Allo stessomodo, è possibile per due variabili riferirsi allo stesso oggetto? se si, come?
    Grazie!!!

  2. #2
    Supponendo di creare una classe che si chiama "Nodo" e di scrivere il seguente algoritmo all'interno del main:

    codice:
    public static void main(String[]args){
        Nodo nodo = new Nodo();
        Nodo nodoAlias = nodo;
    }
    In questo caso "nodoAlias" è la copia del riferimento di "nodo", che in termini di C++ puntano allo stesso oggetto..

    In java non esistono i passaggi per riferimento ma solamente per copia.

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: [java] passaggio per riferimento, variali che si riferiscono allo stesso oggetto

    Originariamente inviato da matteo martis
    Salve!
    sto studiando Java, ma mi è rimasto un vuoto sul passaggio dei parametri.
    É possibile in Java passare un oggetto per riferimento, ovvero che conservi le modifiche
    subito del metodo, dopo che la sua esecuzione è terminata?... come accade per il passaggio per i puntatori in c/C++. Se si, come?
    Allo stessomodo, è possibile per due variabili riferirsi allo stesso oggetto? se si, come?
    Grazie!!!
    In Java esiste solo il passaggio per copia. Nel caso di oggetti però quella che viene passata è la copia del riferimento (e non la copia dell'oggetto).
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613
    Aggiungo che l'oggetto originale ovviamente può essere modificato solo se lo permette e se vengono invocati i giusti metodi: anche se viene copiato il riferimento, se per esempio l'oggetto è immutabile non c'è niente da fare. Lo dico perché, vista la domanda, magari hai fatto qualche prova e ti sei imbattutto in oggetti immutabili come String.

    http://docs.oracle.com/javase/tutori...immutable.html

  5. #5

    Moderazione

    Incidentalmente, Java è trattato in una sezione apposita, dove sposto il thread.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Vi ringrazio!!! ... chiedo scusa per aver sbagliato sezione

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.