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: Joffrey BonifayStatut : PubliéeQuestion passée 116 fois
Modifier
0
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !
Questions similairesPlus de questions sur Java
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
Un moniteur en Java9
La sérialisation peut être personnalisée avec l'interface Externalizable8
Que signifie le mot-clé final devant une méthode en Java?8
Quel "design pattern" permet d'offrir un moyen de traiter les éléments d'un arbre sans se soucier du parcours?