14 Domande e risposte frequenti sull'intervista Java [2022]

Pubblicato: 2022-05-06

Hai un colloquio Java in programma per il lavoro dei tuoi sogni? Ecco le domande e le risposte dell'intervista Java che possono aiutarti a superare l'intervista.

Nel 1982, James Gosling ha investito in un linguaggio Java di alto livello che segue i principi della programmazione orientata agli oggetti. È uno dei linguaggi di programmazione più diffusi e utilizzati. I principianti e gli sviluppatori di software professionisti lo scelgono come potenziale scelta professionale.

Java riguarda la classe, l'ereditarietà, JSON, l'iteratore, l'enumerazione, le variabili volatili, il transitorio, l'ibernazione, il tunneling HTTP e la classe astratta. Deriva la sintassi dai linguaggi di programmazione C++ e C. Tuttavia, è essenziale conoscere le domande vitali che gli intervistatori possono porre.

Per aiutare gli sviluppatori Java, ecco alcune delle domande e risposte importanti dell'intervista.

Java è un puro linguaggio orientato agli oggetti? Spiega la tua risposta.

No, Java non è un puro linguaggio orientato agli oggetti. Supporta tipi di dati primitivi come short, byte, double, float, long, char, boolean, ecc. che non sono oggetti. Tuttavia, soddisfa molti degli aspetti orientati agli oggetti.

Perché Java è popolare come linguaggio indipendente dalla piattaforma?

Il linguaggio di programmazione Java non dipende da alcun software e hardware a causa del compilatore con l'ambiente di runtime (JRE). Il compilatore Java compila il codice istantaneamente e lo converte in codice byte (indipendente dalla piattaforma). Per questo motivo, il codice può essere eseguito su più sistemi rendendolo estremamente popolare.

Spiega la differenza fondamentale tra JDK, JRE e JVM.

Kit di sviluppo Java Ambiente di runtime Java macchina virtuale Java
JDK è lo strumento necessario per documentare, compilare e creare pacchetti di programmi Java. Il bytecode Java viene eseguito utilizzando JRE. JVM è una macchina astratta che fornisce un ambiente di runtime per semplificare l'esecuzione del bytecode Java.
Viene fornito con uno strumento di sviluppo e JRE. In questo modo, l'implementazione della JVM è più accessibile e può esistere fisicamente. JVM include istanze di implementazione, specifica e runtime.
Implementa piattaforme Java in edizione standard, micro ed enterprise. Contiene diversi file e librerie, semplificando l'utilizzo di JVM. Esegue l'esecuzione del codice, la verifica e i carichi.

Dai un'occhiata agli specificatori di accesso per le classi Java?

La parola chiave che si usa prima di un nome di classe è l'identificatore di accesso in Java. Indica l'ambito di accesso utilizzando diversi tipi:

  • Protetto: accede a campi o metodi della stessa classe e dello stesso pacchetto (sottoclassi o luogo di appartenenza) ma non da altre classi.
  • Privato: accede ai campi o ai metodi della stessa classe e da dove appartengono.
  • Pubblico: è possibile accedere facilmente al metodo, alla classe e al campo in tutto il codice.
  • Predefinito: è possibile accedere a classe, campo e metodo dallo stesso pacchetto, non dal pacchetto nativo o dall'esterno.

Cosa intendi per variabile locale e variabile di istanza?

Variabile locale: queste variabili sono disponibili all'interno di un costruttore, una funzione o un blocco a cui è possibile accedere solo al loro interno. La restrizione dell'ambito del blocco viene applicata in una variabile locale. L'altro metodo di classe non sarà in grado di accedere o conoscere la variabile locale dichiarata all'interno del metodo.

Variabile di istanza: tutti i metodi possono accedere a queste variabili nella classe dichiarata all'interno e all'esterno dei metodi. Le variabili intravedono le proprietà dell'oggetto. Solo l'istanza è interessata senza influire su tutte le altre istanze di classe in caso di modifiche.

Che cos'è il compilatore JIT?

Just In Time Compiler viene utilizzato per migliorare le prestazioni dell'applicazione che ha compilato il bytecode, riducendo il consumo di tempo. Aiuta anche a tradurre il codice da JVM al set di istruzioni della CPU.

Spiega la classe singleton in una riga.

È un tipo di classe univoco che esegue il rendering di un'istanza o di un oggetto alla volta.

Che cos'è la clonazione degli oggetti?

Clonazione di oggetti significa creare una copia clone di oggetti Java, aiutando gli sviluppatori a implementarla in un secondo momento. Gli sviluppatori Java possono utilizzare il metodo clone() per implementare facilmente l'interfaccia java.lang.Cloneable .

Spiega i costruttori.

I costruttori sono blocchi di codice che possono inizializzare un oggetto con lo stesso nome di una classe. Insieme ad esso, l'oggetto viene creato automaticamente e non ha alcun tipo di ritorno. Ha due tipi di costruttori come:

  • Costruttore parametrizzato: il costruttore può inizializzare le variabili di istanza che accettano gli argomenti e utilizza i valori forniti.
  • Costruttore predefinito: il costruttore inizializza le variabili di istanza, non crea appaltatori di argomenti per impostazione predefinita e non accetta input. Nessun altro costruttore è definito.

Qual è la differenza tra == e equals() in Java?

L'operatore di uguaglianza (==) è l'operatore binario che confronta oggetti e primitive nel linguaggio di programmazione Java. La classe Object fornisce il metodo come public boolean equals(Object o) . Allo stesso tempo, equals() controlla l'uguaglianza di due oggetti e definisce la classe Objects in Java definita dalla business logic.

Distinguere tra TreeSet e HashSet.

Set di alberi HashSet
Mantieni gli elementi in ordine. Gli elementi non vengono mantenuti in ordine.
Consente un oggetto eterogeneo. Non consente un oggetto eterogeneo.
Implementa l'interfaccia SortedSet utilizzando alberi per l'archiviazione dei dati. Implementa tramite una tabella hash.

Spiegare l'inizializzazione della doppia parentesi.

In Java, Double Brace Initialization combina due processi indipendenti. L'inizializzazione a doppia parentesi utilizza due parentesi graffe per creare rispettivamente una classe interna anonima e un blocco di inizializzazione. Il puntatore "Questo" aiuta la classe interna a fare riferimento alla classe esterna sia per l'inizializzazione che per la creazione in una singola istruzione.

Definisci pool di stringhe Java.

La raccolta di stringhe è nota come ordinamento Java String Pool nella memoria heap, in cui viene creato un nuovo oggetto. String Pool verifica la disponibilità degli oggetti, quindi viene restituito lo stesso riferimento alle variabili. In caso contrario, viene realizzato un nuovo oggetto con il ritorno ai rispettivi riferimenti.

Cosa significa classe di raccolta in Java?

Consideralo come un'architettura che rappresenta la struttura che aiuta a manipolare e ordinare il gruppo di oggetti. La raccolta aiuta a eseguire attività come l'eliminazione, la ricerca, la manipolazione, l'ordinamento, la modifica, l'inserimento, ecc., inclusi framework come metodi, classi e interfacce.

Parole finali

Indubbiamente, Java è uno dei linguaggi di programmazione di alto livello più popolari con straordinarie librerie standard e potenti strumenti. Offre supporto per il threading per diversi problemi, ad esempio problemi basati sulla concorrenza. Ha anche funzionalità integrate e una sintassi facile da usare che unisce stabilità al prodotto.

Per padroneggiare Java, prendi in considerazione l'iscrizione a uno di questi corsi Java online.