Differenza tra costruttore e distruttore

Differenza chiave - Costruttore vs Distruttore
 

La maggior parte dei linguaggi di programmazione supporta la programmazione orientata agli oggetti (OOP). È il paradigma che aiuta a modellare un software o un programma usando oggetti. OOP migliora la produttività e la manutenibilità. In OOP tutto è considerato come un oggetto. Gli oggetti vengono creati o istanziati utilizzando le classi. Il costruttore e il distruttore sono termini comuni nella programmazione orientata agli oggetti. Questo articolo discute la differenza tra un costruttore e un distruttore. Un costruttore e un distruttore sono funzioni membro speciali in una classe. Un costruttore e un distruttore hanno lo stesso nome della classe, ma il distruttore ha un segno tilde (~). Il differenza fondamentale tra un costruttore e un distruttore è quello un costruttore viene utilizzato per allocare memoria a un oggetto mentre un distruttore viene utilizzato per la memoria deallocate di un oggetto.

CONTENUTO

1. Panoramica e differenza chiave
2. Cos'è un costruttore
3. Cos'è un Destructor
4. Somiglianze tra il costruttore e il distruttore
5. Confronto affiancato - Costruttore contro il distruttore in forma tabulare
6. Sommario

Cos'è un costruttore?

Un costruttore è una funzione membro speciale nella classe per allocare memoria a un oggetto. Può essere utilizzato per fornire valori per i membri dei dati. Il costruttore viene invocato quando viene creato l'oggetto. Ha lo stesso nome del nome della classe. Un costruttore non restituisce alcun valore. Pertanto, non contiene un tipo di reso. Un costruttore può anche accettare parametri. Un costruttore con parametri è noto come costruttore parametrizzato.

Un esempio di costruttore è il seguente.

public class Rectangle

int lunghezza, larghezza;

public Rectangle (int p, int q)

lunghezza = p;

larghezza = q;

public int calculateArea ()

ritorno (lunghezza * larghezza);

In base alla parte di codice precedente, il costruttore ha lo stesso nome del nome della classe. Il costruttore Rectangle accetta due parametri. Sono p e q. Il valore intero p è assegnato alla lunghezza. Il valore intero q è assegnato alla larghezza. Nel calcualteArea, la moltiplicazione di lunghezza e larghezza viene calcolata per trovare l'area del rettangolo. Nel programma principale, il programmatore può creare un oggetto di tipo Rectangle e passare gli argomenti. per esempio. Rectangle rect1 = new Rectangle (2,3). Quindi, il costruttore parametrizzato viene chiamato e assegna i valori alla lunghezza e alla larghezza.

Figura 01: Costruttore e distruttore

Quando c'è un costruttore senza parametri, è chiamato costruttore predefinito. Se il programmatore non definisce un costruttore, verrà invocato il costruttore predefinito. Se c'è una classe come Studente e quando il programmatore crea un oggetto di tipo Studente, viene chiamato il costruttore predefinito. per esempio. Studente s1 = nuovo studente (); Possono esserci più costruttori con parametri diversi e tipi di dati diversi in una classe. Il costruttore appropriato può essere chiamato di conseguenza. Pertanto, i costruttori possono essere sovraccaricati.

Cos'è un Destructor?

Un distruttore è una funzione membro speciale nella classe. È usato per de-allocare memoria per un oggetto creato dal costruttore. Il distruttore viene invocato quando l'oggetto viene distrutto. Effettua lo spazio di pulizia che non è più necessario. Come il costruttore, il distruttore ha lo stesso nome della classe. Contiene anche un simbolo tilde (~).

Un distruttore non restituisce alcun valore. A differenza di un costruttore, il distruttore non accetta alcun parametro. Quindi, il distruttore non supporta il sovraccarico. La dichiarazione di un distruttore è considerata una buona pratica di programmazione perché rilascia lo spazio di memoria e tale spazio può essere utilizzato per memorizzare altri oggetti. La sintassi del distruttore è simile a ~ className () . per esempio. ~ Rectangle () ; Può esserci un solo distruttore in una classe.

Quali sono le somiglianze tra il costruttore e il distruttore?

  • Sia il costruttore che il distruttore sono associati agli oggetti.
  • Sia il costruttore che il distruttore non restituiscono alcun valore.
  • Sia il costruttore che il distruttore sono chiamati automaticamente.

Qual è la differenza tra Costruttore e Distruttore?

Costruttore vs Destructor

Un costruttore è un membro speciale nella classe che viene utilizzato per allocare memoria a un oggetto. Un distruttore è un membro speciale della classe che viene utilizzato per deallocare la memoria di un oggetto.
 Metodo di Invocazione
Un costruttore viene invocato quando viene creato l'oggetto. Un distruttore viene chiamato quando l'oggetto viene distrutto o cancellato.
uso
Un costruttore viene utilizzato per allocare memoria per gli oggetti. Un distruttore viene utilizzato per deallocare la memoria per gli oggetti.
 parametri
Un costruttore accetta parametri. Un distruttore non accetta parametri.
Numero di costruttori e distruttori
Possono esserci più costruttori con un numero diverso di parametri e diversi tipi di parametri. Ci può essere un singolo distruttore nella classe.
Velocità di esecuzione
Un costruttore ha lo stesso nome del nome della classe. Un distruttore ha lo stesso nome del nome della classe con un simbolo tilde (~).
Sovraccarico
Un costruttore può essere sovraccaricato. Un distruttore non può essere sovraccaricato.

Sommario - Costruttore vs Distruttore

OOP è un paradigma comune nello sviluppo del software. Può semplificare un progetto complesso. Un costruttore e un distruttore sono usati in OOP. Un costruttore e un distruttore hanno lo stesso nome della classe, ma il distruttore ha un segno ~. La differenza tra un costruttore e un distruttore è che un costruttore viene utilizzato per allocare memoria a un oggetto mentre un distruttore viene utilizzato per la memoria deallocate di un oggetto.

Scarica il PDF di Constructor vs Destructor

È possibile scaricare la versione PDF di questo articolo e utilizzarlo per scopi offline come da nota di citazione. Si prega di scaricare la versione PDF qui: Differenza tra Costruttore e Distruttore

Riferimento:

1.tutorialspoint.com. "Oggetti e classi Java". Il punto, Disponibile qui