Описание тега jshell
JShell предоставляет возможность в интерактивном режиме оценить заявления, заявления и выражения на языке программирования Java в государстве JShell.
Состояние JShell включает в себя развивающийся код и состояние выполнения. Чтобы облегчить быстрое исследование и кодирование, операторы и выражения не должны встречаться в методе, выражения не должны иметь побочных эффектов, переменные не должны встречаться внутри класса, а методы не должны встречаться внутри класса или интерфейса.
Кроме того, JShell можно использовать для создания и запуска скриптов.
Цели
API и инструмент JShell предоставят способ интерактивной оценки объявлений, операторов и выражений языка программирования Java в состоянии JShell. Состояние JShell включает в себя развивающийся код и состояние выполнения. Чтобы облегчить быстрое исследование и кодирование, операторы и выражения не должны встречаться внутри метода, а переменные и метод не должны встречаться внутри класса.
Инструмент JShell будет инструментом командной строки с функциями, упрощающими взаимодействие, включая: историю с редактированием, завершение табуляции, автоматическое добавление необходимых точек с запятой терминала и настраиваемые предопределенные операции импорта и определения.
Нецелевые
Новый интерактивный язык не является целью: весь принятый ввод должен соответствовать грамматическим формулировкам в спецификации языка Java (JLS). Кроме того, в соответствующем окружающем контексте весь принятый ввод должен быть допустимым кодом Java (JShell автоматически предоставит этот окружающий контекст - "упаковку"). То есть, если X - это вход, который принимает JShell (в отличие от отклонения с ошибкой), тогда существуют A и B, так что AXB является допустимой программой на языке программирования Java.
За рамками являются графические интерфейсы и поддержка отладчика. JShell API предназначен для обеспечения функциональности JShell в IDE и других инструментах, но инструмент JShell не предназначен для использования в качестве IDE.