Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException
вообще.
См. также: A хороший список лучших практик
Я бы добавил, очень важно, хорошо использовать модификатор final
. Использование "окончательной" модификатор, когда это применимо в Java
Сводка:
final
для обеспечения хорошей инициализации. @NotNull
и @Nullable
if("knownObject".equals(unknownObject)
valueOf()
поверх toString (). StringUtils
StringUtils.isEmpty(null)
. Похоже, проблема с отображением на веб-сайте вашего вопроса с несколькими вариантами ответов. />
должен отображать >
, поэтому </>
- это просто <>
, оператор алмазов .
Кстати, я думаю, что нет правильного ответа, поскольку конструктор only of Stack
не принимает параметров, поэтому нет способа инициализировать стек размером 50 На самом деле это даже не имеет смысла, теоретически можно инициализировать стек с заданной емкостью (размер резервного массива), но для стека иметь размер из 50 , он должен содержать 50 элементов.
Поэтому выбор ответа не должен быть единственным правильным способом. Или этот тест не о java.util.Stack
, а о специальном классе стека.