Difficile
Pouvez-vous repérer la fuite de mémoire dans le code suivant ?
public class Test {
private Object[] elements;
private int size = 0;
public static final int DEFAULT_INITIAL_CAPACITY = 16;
public Test() {
elements = new Object[DEFAULT_INITIAL_CAPACITY];
}
public void push(Object e) {
ensureCapacity();
elements[size++] = e;
}
public Object pop() {
if (size == 0) {
throw new EmptyStackException();
}
return elements[size--];
}
private void ensureCapacity() {
if (elements.length == size) {
elements = Arrays.copyOf(elements, 2 * size + 1);
}
}
}
Auteur: JoffreyStatut : PubliéeQuestion passée 180 fois
Modifier
0
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !
10
Quel est le message d'erreur lorsque vous essayez de sérialiser une classe qui n'implémente pas Serializable?11
Quel "design pattern" permet d'offrir un moyen de traiter les éléments d'un arbre sans se soucier du parcours?12
La sérialisation peut être personnalisée avec l'interface Externalizable12
Combien d'instances de Integer ne peuvent pas être libérées de la mémoire?12
Un moniteur en Java12
Que signifie le mot-clé final devant une méthode en Java?16
Combien de fois la condition `(a++ < 15)` est-elle évaluée dans le code suivant ?
```java
int a = 3;
while (a++ < 15) {
if ((a++ % 5) == 0)
break;
}
```