Sobes.tech

Java

Se stessi progettando un GC, quali approcci di raccolta dei rifiuti conosci oltre alla traversata del grafo di raggiungibilità?

Senior
278

Cos'è un deadlock? In cosa si differenzia da una condizione di race? Come evitare un deadlock, anche se non è possibile determinare in anticipo l'ordine di acquisizione dei lock?

Senior
272

Implementa RecommenderService con i metodi getTop(User user, int limit) e addDocument(Document document), utilizzando un archivio in memoria

Senior
216

Quanto pesa un puntatore? Cos'è?

Senior
199

A cosa serve lo stack e a cosa serve l'heap? Qual è la differenza?

Senior
189

Perché il test falliva con NullPointerException e come correggerlo?

Senior
188

Cos'è un heap (montículo)?

Senior
184

Come vengono eliminati gli oggetti dall'heap in Java? Parla del Garbage Collector.

Senior
174

Confronta le prestazioni dei seguenti frammenti di codice che copiano elementi da un array di Integer a un array di int e viceversa, incluso il caso in cui vengono creati nuovi oggetti Integer a partire da valori int: ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { x[i] = y[i]; } } ``` ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = x[i]; } } ``` ```java int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = new Integer(x[i]); } } ``` Analizza e spiega le differenze di prestazioni e comportamento tra questi approcci.

Senior
172

Qual principio SOLID viene violato nell'implementazione attuale, dove il servizio è strettamente legato a una specifica implementazione di storage (ArrayList)?

Senior
166

Quali metodi di comunicazione tra processi (IPC) conosci a livello delle interfacce del sistema operativo Unix?

Senior
166

int SIZE = 1000000; int[] x = new int[SIZE]; Integer[] y = new Integer[SIZE]; for (;;) { for (int i = 0; i < SIZE; ++i) { y[i] = new Integer(x[i]); } }

Senior
160

A cosa serve synchronized? Cosa useresti per implementare un contatore thread-safe invece di synchronized?

Senior
157

Quale problema può verificarsi in un ambiente di produzione quando più richieste REST accedono contemporaneamente al servizio?

Senior
155

/** * Ricerca di due numeri in un array la cui somma sia uguale a un numero dato * <p> * Scrivi una funzione che accetti come primo argomento un array di numeri positivi non ordinati * e come secondo argomento un numero positivo. La funzione deve restituire true se nell'array * ci sono 2 numeri la cui somma dà il secondo argomento. * <p> * Input: ([10, 15, 3, 7], 17) * Output: true */

Senior
154

Come appare un primitivo nello stack e come nell'heap?

Senior
154

Quali sono gli svantaggi dell'attuale approccio di ordinare l'intera lista ad ogni chiamata di getTop?

Senior
153

Decifra l'acronimo ACID e spiega ogni proprietà.

Senior
151

Come implementare correttamente le dipendenze (Dependency Injection) in un servizio — quale approccio è preferibile?

Senior
150

Cos'è la chiamata di sistema fork nei sistemi operativi della famiglia Unix?

Senior
149
/2