Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

JShell - это инструмент цикла чтения-оценки-печати Java, впервые представленный в JDK 9 . [1] Это отслеживается JEP 222: jshell: оболочка Java (цикл чтения-вычисления-печати). [2]

Одна из причин, по которой JShell был предложен для Java 9, заключается в том, что многие приложения используют свои собственные механизмы для интерактивной оценки выражений, а фактической библиотекой для использования Java REPL часто был BeanShell , который с 2003 года находится в бездействии и который сделал произвольные изменения языка Java. [3] [4]

Пример [ править ]

$ jshell| Добро пожаловать в JShell - Версия 9| Для введения введите: / help introjshell> int a [] = {0,1,3,5,8}a ==> int [5] {0, 1, 3, 5, 8}jshell> int fact (int n) { ...> return n <2? 1: n * fact (n-1); ...>}| созданный метод fact (int)jshell> для (int i = 0; i <a.length; ++ i) ...> a [i] = fact (a [i]);jshell> аa ==> int [5] {1, 1, 6, 120, 40320}jshell> / выход| До свидания$

См. Также [ править ]

Ссылки [ править ]

  1. ^ «Oracle объявляет о выпуске Java SE 9 и Java EE 8» . Корпорация Oracle . 2017-09-21 . Проверено 25 сентября 2017 . CS1 maint: обескураженный параметр ( ссылка )
  2. ^ "JEP 222: jshell: оболочка Java (цикл чтения-вычисления-печати)" . Корпорация Oracle . 2016-10-10 . Проверено 1 ноября 2016 . Предоставляет интерактивный инструмент для оценки объявлений, операторов и выражений языка программирования Java вместе с API, чтобы другие приложения могли использовать эту функциональность. CS1 maint: обескураженный параметр ( ссылка )
  3. ^ "JEP 222: jshell: оболочка Java (цикл чтения-вычисления-печати)" . Корпорация Oracle . 2016-10-10 . Проверено 1 ноября 2016 . Другой альтернативой является сохранение статус-кво: используйте другой язык или сторонний REPL, такой как BeanShell, хотя этот конкретный REPL долгие годы бездействовал, основан на JDK 1.3 и вносит произвольные изменения в язык. CS1 maint: обескураженный параметр ( ссылка )
  4. ^ "JShell, Java 9 REPL - Что он делает?" . jaxenter.com. 2015-09-03 . Проверено 1 ноября 2016 . BeanShell (как и Groovy, кстати, тоже) предпринял попытку стандартизации с помощью процесса сообщества Java в JSR 274 - JSR, который не дал каких-либо заметных результатов, несмотря на то, что (или, возможно, потому что?) Две крупные компании , Sun и Google присоединились к группе экспертов. По инициативе JCP.next этот JSR был объявлен «бездействующим». CS1 maint: обескураженный параметр ( ссылка )