Back to questions
Junior — Middle
60
Каким образом можно спровоцировать ошибку нехватки памяти в Java-приложении?
Companies where asked
Ifellow
Answer from AI
sobes.tech AI
Ошибка нехватки памяти в Java-приложении (OutOfMemoryError) можно спровоцировать, например, создавая большое количество объектов без освобождения ссылок на них, что мешает сборщику мусора освободить память. Часто это происходит при бесконтрольном добавлении элементов в коллекции, например, в бесконечном цикле.
Пример:
import java.util.ArrayList;
import java.util.List;
public class MemoryLeakExample {
public static void main(String[] args) {
List<byte[]> list = new ArrayList<>();
while (true) {
// Создаем массивы по 1 МБ и добавляем в список
list.add(new byte[1024 * 1024]);
}
}
}
В этом примере программа будет постоянно выделять память под новые массивы и хранить ссылки на них, что приведет к переполнению кучи и выбросу OutOfMemoryError.