Costruttori in Java

In Java, un costruttore è un blocco di codici simile al metodo. Viene chiamato quando viene creata unistanza della classe. Al momento della chiamata al costruttore, la memoria per loggetto viene allocata nella memoria.

È un tipo speciale di metodo che viene utilizzato per inizializzare loggetto.

Ogni volta che un oggetto viene creato utilizzando la parola chiave new (), viene chiamato almeno un costruttore.

Chiama un costruttore predefinito se non è disponibile un costruttore nella classe. In tal caso, il compilatore Java fornisce un costruttore predefinito per impostazione predefinita.

Esistono due tipi di costruttori in Java: costruttore no-arg e costruttore parametrizzato.

Nota: è chiamato costruttore perché costruisce i valori al momento della creazione delloggetto. Non è necessario scrivere un costruttore per una classe. È perché il compilatore Java crea un costruttore predefinito se la tua classe non ne ha.

Regole per la creazione del costruttore Java

Ci sono due regole definite per il costruttore.

  1. Il nome del costruttore deve essere uguale al nome della sua classe
  2. Un costruttore non deve avere un tipo di ritorno esplicito
  3. Un costruttore Java non può essere astratto, statico, finale e sincronizzato

Nota: possiamo utilizzare modificatori di accesso durante la dichiarazione di un costruttore. Controlla la creazione delloggetto. In altre parole, possiamo avere un costruttore privato, protetto, pubblico o predefinito in Java.

Tipi di costruttori Java

Esistono due tipi di costruttori in Java:

  1. Costruttore predefinito (costruttore senza argomenti)
  2. Costruttore parametrizzato

Costruttore predefinito Java

Un costruttore è chiamato “Costruttore predefinito” quando “non ne ha parametro.

Sintassi del costruttore predefinito:

Esempio di costruttore predefinito

In questo esempio, stiamo creando il no- arg costruttore nella classe Bike. Verrà richiamato al momento della creazione delloggetto.

Provalo ora

Risultato:

Bike is created

Regola: Se non cè un costruttore in una classe, il compilatore crea automaticamente un costruttore predefinito.

D) Qual è lo scopo di un costruttore predefinito?

Il costruttore predefinito viene utilizzato per fornire i valori predefiniti alloggetto come 0, null, ecc., a seconda del tipo.

Esempio di costruttore predefinito che visualizza i valori predefiniti

Provalo ora

Risultato:

0 null0 null

Spiegazione: nella classe precedente, non sei creando qualsiasi costruttore in modo che il compilatore fornisca un costruttore predefinito. Qui i valori 0 e null sono forniti dal costruttore predefinito.

Costruttore parametrizzato Java

Un costruttore che ha un numero specifico di parametri è chiamato costruttore parametrizzato.

Perché utilizzare il costruttore parametrizzato?

Il costruttore parametrizzato viene utilizzato per fornire valori diversi a oggetti distinti. Tuttavia, puoi fornire anche gli stessi valori.

Esempio di costruttore parametrizzato

In questo esempio, abbiamo creato il costruttore della classe Student che ha due parametri. Possiamo avere un numero qualsiasi di parametri nel costruttore.

Provalo ora

Risultato:

111 Karan222 Aryan

Sovraccarico del costruttore in Java

In Java, un costruttore è proprio come un metodo ma senza tipo restituito. Può anche essere sovraccaricato come i metodi Java.

Il sovraccarico del costruttore in Java è una tecnica per avere più di un costruttore con diversi elenchi di parametri. Sono organizzati in modo che ogni costruttore esegua unattività diversa. Sono differenziati dal compilatore per il numero di parametri nellelenco e il loro tipo.

Esempio di sovraccarico del costruttore

Provalo ora

Risultato:

111 Karan 0222 Aryan 25

Differenza tra costruttore e metodo in Java

Ci sono molte differenze tra costruttori e metodi. Sono forniti di seguito.

Java Constructor Metodo Java
Un costruttore viene utilizzato per inizializzare lo stato di un oggetto. Un metodo viene utilizzato per esporre il comportamento di un oggetto.
Un costruttore deve non ha un tipo di ritorno. Un metodo deve avere un tipo di ritorno.
Il costruttore viene invocato implicitamente. Il metodo viene invocato esplicitamente.
Il compilatore Java fornisce un costruttore predefinito se non si dispone di alcun costruttore in una classe. Il metodo non è fornito da il compilatore in ogni caso.
Il nome del costruttore deve essere lo stesso del nome della classe. Il nome del metodo può o non può essere lo stesso della classe nome.

Java Copy Constructor

Non esiste un costruttore di copie in Java.Tuttavia, possiamo copiare i valori da un oggetto a un altro come il costruttore di copie in C ++.

Ci sono molti modi per copiare i valori di un oggetto in un altro in Java. Sono:

  • Per costruttore
  • Assegnando i valori di un oggetto a un altro
  • Con il metodo clone () della classe Object

In questo esempio, copieremo i valori di un oggetto in un altro utilizzando il costruttore Java.

Provalo ora

Risultato:

111 Karan111 Karan

Copia di valori senza costruttore

Possiamo copiare i valori di un oggetto in un altro assegnando i valori degli oggetti a un altro oggetto. In questo caso, non è necessario creare il costruttore.

Provalo ora

Risultato:

111 Karan111 Karan

D) Il costruttore restituisce un valore?

Sì, è listanza della classe corrente (non è possibile utilizzare il tipo restituito ma restituisce un valore).

Il costruttore può eseguire altre attività invece dellinizializzazione?

Sì, come la creazione di oggetti, lavvio di un thread, la chiamata di un metodo, ecc. Puoi eseguire qualsiasi operazione nel costruttore mentre esegui il metodo.

Esiste una classe Constructor in Java?

Sì.

Qual è lo scopo della classe Constructor?

Java fornisce una classe Constructor che può essere utilizzato per ottenere le informazioni interne di un costruttore nella classe. Si trova nel pacchetto java.lang.reflect.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *