در JShell بدون نیاز به ساختن کلاس و متد و ... به آسانی میتوانید کدهای جاوا مانند تعریف متغیر ، لیست و آرایه و... را در کنسول JShell تایپ کرده و بدون معطلی خروجی را مشاهده کنید .
با استفاده از JShell به راحتی میتوانید از API های ناآشنا استفاده کنید ، همچنین به راحتی میتوانید statement ها و متدهای خود را در Jshell پیاده سازی و تست کنید .
JShell را به دلیل امکاناتش ، REPL نیز مینامند که مخفف کلمات زیر است :
Read : وارد کردن و خواندن کد
Evaluate : ارزیابی کد
Print : چاپ نتایج
Loop : استفاده از حلقه ها
برای استفاده از Jshell میتوان با تایپ کردن jshell در محیط ترمینال وارد محیط Jshell شد .
~$ jshell
| Welcome to JShell -- Version 9
| For an introduction type: /help intro
jshell>
حال میتوان به راحتی در محیط jshell کدهای جاوا را تایپ و اجرا کرد مانند :
- تعریف کلاس ها
- Statement ها
- تعریف اینترفیس
- تعریف متد
- تعریف فیلد و...
تعریف متغیر ها :
int a = 5
a ==> 5
int b = 3
b ==> 3
تعریف متد :
public int sum (int x,int y){ return x+y; }
|created method sum(int,int)
jshell> sum(a,b)
$2==>8
حلقه ها در JShell :
jshell> String[] cities = {"Shiraz", "Isfahan", "Rasht", "Tehran"}
cities==> String[4] { "Shiraz", "Isfahan", "Rasht", "Tehran"}
jshell> for(String city : cities) {
...> System.out.println(city);
...> }
Shiraz
Isfahan
Rasht
Tehran
Jshell یک سری پکیج پرکاربرد جاوا را به صورت پیشفرض import کرده است . با تایپ imports/ میتوان لیست آنها را مشاهده کرد :
jshell> /imports
| import java.io.*
| import java.math.*
| import java.net.*
| import java.nio.file.*
| import java.util.*
| import java.util.concurrent.*
| import java.util.function.*
| import java.util.prefs.*
| import java.util.regex.*
| import java.util.stream.*
برای ایمپورت کردن پکیج های دیگر مانند پکیج time و... در صورت نیاز میتوان از دستور زیر استفاده کرد :
import java.time.*