Riferimento vs oggetto in Java: differenza e confronto

Oggetti e riferimenti sono termini associati a una "classe" nel linguaggio di programmazione Java.

Punti chiave

  1. Un riferimento in Java è una variabile che contiene l'indirizzo di memoria di un oggetto, mentre un oggetto è un'istanza di una classe che contiene dati e metodi per manipolare tali dati.
  2. I riferimenti vengono utilizzati per interagire con gli oggetti in Java, consentendo la manipolazione delle proprietà degli oggetti e l'invocazione dei metodi degli oggetti. Al contrario, gli oggetti sono le effettive istanze di dati e metodi creati dalle definizioni di classe.
  3. Più riferimenti possono puntare allo stesso oggetto, consentendo l'accesso condiviso e la modifica dei dati dell'oggetto. Al contrario, gli oggetti possono essere creati e distrutti dinamicamente durante l'esecuzione di un programma Java.

Riferimento vs oggetto in Java

La differenza tra un oggetto e un riferimento è che un oggetto è un'istanza di una classe ed è memorizzato in un particolare slot di memoria. Un 'riferimento' indica il luogo in cui sono archiviate le variabili ei metodi degli 'oggetti'. 

Riferimento vs oggetto in Java

Una classe è un progetto o un modello che fornisce istruzioni sulla creazione di oggetti. L'oggetto si basa su questo La struttura, compilando i campi necessari in base a quel modello di classe.

Come indica il nome, un riferimento alla memoria è semplicemente un riferimento allo slot di memoria.


 

Tavola di comparazione

Parametro di confrontoOggettoRiferimento
Definizione di baseÈ l'istanza di una classe e tutti gli elementi che contiene sono basati sul progetto della classe.Un semplice riferimento di memoria che indica dove l'oggetto è archiviato in uno slot di memoria.
Formato per la creazioneEsiste un formato semplice per la creazione di un oggetto:
ClassName reference_variable = new ClassName (con parametro);
Il riferimento alla memoria viene creato insieme all'oggetto. Viene utilizzato nel formato per la creazione di oggetti e riceve un nome di variabile.
ElementiContiene metodi e variabili basati sulla classe.Contiene una sequenza di bit che memorizza l'indirizzo dell'oggetto.
MutevoleGli oggetti hanno stati e comportamenti che possono essere cambiati, cioè, la condizione dell'oggetto può essere cambiata.Il valore di riferimento della variabile non può essere modificato. Può rimanere solo con il tipo di dati con cui è stato dichiarato.
Significato virtualeÈ un'entità del mondo reale che contiene una qualche forma di memoria o dati.Non è altro che un nome di variabile che non ha alcun significato reale. È come il nome di una persona che fa riferimento a quella persona.

 

Che cos'è il riferimento in Java?

Un riferimento fornisce l'indirizzo in cui è stata allocata la memoria dell'oggetto.

Leggi anche:  Come condividere il tuo calendario Google con altri (aggiornato per il 2024)

L'oggetto non viene mai utilizzato direttamente; assegniamo invece delle variabili di riferimento, che indirettamente fungono da intermediario tra l'oggetto chiamato e l'oggetto immagazzinato nella memoria.

Java consente anche quattro diversi tipi di riferimenti:

  1. Riferimento forte.
  2. Riferimento debole.
  3. Riferimento morbido.
  4. Riferimento Fantasma

Viene creato un riferimento all'interno del formato per la creazione di un oggetto da una classe –

Nome della classe  riferimento_variabile = new ClassName(con parametro);

Qui la 'reference_variable' è il valore assegnato al riferimento. Questo valore non può essere modificato ed è di un solo tipo di dati.

riferimento in java
 

Cos'è l'oggetto in Java?

Un oggetto è semplicemente un'istanza della classe. Rappresenta la struttura del corso e segue le istruzioni del blueprint per tutti gli elementi presenti al suo interno, come metodi e variabili.

Si vede che gli oggetti hanno stati e comportamenti. Qui, gli stati sono un'entità 'astratta', che contiene tutte le proprietà delle cose ei valori di quelle proprietà. In poche parole, a stato per un essere umano sarebbe – nome, razza, età ecc.

I comportamenti legano la struttura dell'oggetto. Legano le relazioni tra gli attributi per consentire all'oggetto di eseguire funzioni/operazioni quando viene chiamato.

L '"Oggetto" viene creato utilizzando tre passaggi distinguibili-

  1. Dichiarazione
  2. la creazione di istanze
  3. Inizializzazione

Nella prima fase viene dichiarato un nome di variabile di un tipo di oggetto, che diventa il riferimento per la memoria dell'oggetto.

Nella seconda fase, istanziazione, abbiamo una parola chiave, 'new', usata per creare l'oggetto.

Nella terza fase, inizializzazione, abbiamo la parola chiave 'new' seguita da un 'costruttore', che ha lo stesso nome della classe da cui viene creato l'oggetto, insieme ai parametri.

Leggi anche:  Correzione: problema relativo al metodo di pagamento Netflix: soluzioni rapide ed efficienti

Il formato compilato per la creazione dell'oggetto è come tale:

ClassName reference_variable = new ClassName (con parametro) ;

Qui, il riferimento viene creato utilizzando 'reference_variable' e ClassName (con parametro) deve chiamare il costruttore.

Esempio – Persona stu1 = new Persona();

Qui Person si riferisce alla classe, stu1 è il valore di riferimento della variabile che punta al nuovo oggetto che viene creato e Person() è il costruttore.

oggetto in java

Principali differenze tra riferimento e oggetti in Java

  1. Un oggetto è un'istanza derivata dalla struttura di una classe. Un riferimento è una variabile che punta alla posizione dell'oggetto in memoria.
  2. Viene creato un oggetto con un formato specifico: "ClassName reference_variable = new ClassName(with parameter);". Un riferimento viene creato insieme alla creazione dell'oggetto all'interno del formato.

Riferimenti
  1. https://dl.acm.org/doi/abs/10.1145/1287624.1287637
  2. https://cds.cern.ch/record/1033269/files/9780596007737_TOC.pdf

Ultimo aggiornamento: 11 giugno 2023

punto 1
Una richiesta?

Ho messo così tanto impegno scrivendo questo post sul blog per fornirti valore. Sarà molto utile per me, se pensi di condividerlo sui social media o con i tuoi amici/familiari. LA CONDIVISIONE È ♥️

11 pensieri su "Riferimento vs Oggetto in Java: differenza e confronto"

  1. Ho trovato molto interessante la spiegazione sugli stati e sui comportamenti degli oggetti. Fornisce una chiara comprensione di come funzionano gli oggetti in Java.

    Rispondi
  2. La tabella comparativa presenta una panoramica concisa delle differenze tra oggetti e riferimenti. È molto utile per comprendere le distinzioni fondamentali.

    Rispondi
  3. L'articolo spiega magnificamente le principali differenze tra riferimenti e oggetti in Java. La parte relativa agli stati e ai comportamenti è particolarmente illuminante.

    Rispondi
  4. Apprezzo il modo in cui l'articolo sottolinea l'importanza del progetto fornito da una classe nella creazione di oggetti. Questo aiuta a chiarire il concetto ai principianti.

    Rispondi
  5. La spiegazione metaforica dello "stato" di un oggetto è un ottimo modo per concettualizzarlo per i lettori. Rende un concetto complesso più riconoscibile e più facile da comprendere.

    Rispondi
  6. L'articolo non approfondisce i tipi di dati complessi e il modo in cui vengono gestiti da riferimenti e oggetti in Java. Un po' più di dettagli su questo sarebbe utile.

    Rispondi
  7. Questo articolo fornisce un confronto approfondito tra oggetto e riferimento in Java. La spiegazione sul formato per la creazione degli oggetti è particolarmente utile!

    Rispondi
  8. La spiegazione dettagliata nella sezione "Che cos'è il riferimento in Java?" sezione fornisce una chiara comprensione di come funzionano i riferimenti nella programmazione Java. È molto ben articolato.

    Rispondi
  9. L'esempio fornito per la creazione di un oggetto è utile per illustrare il processo. Aggiunge una dimensione pratica alla spiegazione teorica.

    Rispondi

Lascia un tuo commento

Vuoi salvare questo articolo per dopo? Fai clic sul cuore nell'angolo in basso a destra per salvare nella casella dei tuoi articoli!