Sobes.tech

Java

Se estivesse a projetar um GC, que abordagens de recolha de lixo conhece além da travessia do grafo de alcançabilidade?

Senior
281

O que é um deadlock? Qual a diferença para uma condição de corrida? Como evitar deadlock, mesmo que seja impossível determinar a ordem de aquisição dos locks com antecedência?

Senior
274

Implemente RecommenderService com os métodos getTop(User user, int limit) e addDocument(Document document), usando armazenamento em memória

Senior
220

Qual é o peso de um ponteiro? O que é isso?

Senior
201

Para que serve a pilha e para que serve o heap? Qual é a diferença?

Senior
190

Por que o teste falhou com NullPointerException e como corrigi-lo?

Senior
189

O que é heap (heap)?

Senior
188

Como é que a remoção de objetos do heap acontece em Java? Fale sobre o Garbage Collector.

Senior
182

Compare o desempenho dos seguintes trechos de código que copiam elementos de um array de Integer para um array de int e vice-versa, incluindo o caso em que novos objetos Integer são criados a partir de valores 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]); } } ``` Analise e explique as diferenças de desempenho e comportamento entre essas abordagens.

Senior
174

Qual princípio SOLID é violado na implementação atual, onde o serviço está fortemente acoplado a uma implementação específica de armazenamento (ArrayList)?

Senior
167

Que métodos de comunicação entre processos (IPC) conhece ao nível das interfaces do 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
162

Que problema pode ocorrer em um ambiente de produção com acesso multithread ao serviço (vários pedidos REST simultâneos)?

Senior
160

Para que serve o synchronized? O que usarias para implementar um contador thread-safe em vez de synchronized?

Senior
160

Como é que um primitivo aparece na pilha e como na heap?

Senior
156

Quais são as desvantagens da abordagem atual de ordenar toda a lista a cada chamada de getTop?

Senior
155

/** * Procura por dois números num array cuja soma seja igual a um número dado * <p> * Escreve uma função que aceite um array de números positivos não ordenados como primeiro argumento * e um número positivo como segundo argumento. A função deve retornar true se no array * houver 2 números cuja soma seja igual ao segundo argumento. * <p> * Entrada: ([10, 15, 3, 7], 17) * Saída: true */

Senior
155

Como implementar corretamente as dependências (Injeção de Dependências) num serviço — qual é a abordagem mais preferida?

Senior
153

Decifre a abreviatura ACID e explique cada propriedade.

Senior
152

O que é a chamada de sistema fork nos sistemas operativos da família Unix?

Senior
150
/2