Назад к вопросам
Middle
4
Где в методе getTagsOfAuthorsBooks может вылететь NullPointerException?
Компании, где спрашивали
экзон
Ответ от нейросети
sobes.tech AI
NullPointerException в методе getTagsOfAuthorsBooks может возникнуть в следующих местах:
- Если объект автора (
author) равенnull, и происходит попытка обращения к его методам или полям. - Если список книг автора (
author.getBooks()) равенnullили содержитnullэлементы. - Если у книги (
book) равенnullили у книги отсутствует список тегов (book.getTags()равенnull). - Если коллекции, которые используются для сбора тегов, не инициализированы.
Пример потенциально опасного кода:
List<Tag> getTagsOfAuthorsBooks(Author author) {
List<Tag> tags = new ArrayList<>();
for (Book book : author.getBooks()) { // author или getBooks() может быть null
tags.addAll(book.getTags()); // book или getTags() может быть null
}
return tags;
}
Чтобы избежать NPE, нужно добавить проверки на null или использовать Optional, либо предусмотреть инициализацию коллекций по умолчанию.