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 130 fois
Modifier
0
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !
10
Combien d'instances de Integer ne peuvent pas être libérées de la mémoire?11
Un moniteur en Java10
La sérialisation peut être personnalisée avec l'interface Externalizable8
Quelle est la classe la plus adaptée pour composer une chaîne de caractères à partir de plusieurs éléments concaténés les uns aux autres?13
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;
}
```10
Que signifie le mot-clé final devant une méthode en Java?9
Quel "design pattern" permet d'offrir un moyen de traiter les éléments d'un arbre sans se soucier du parcours?