Công cụ JShell được giới thiệu trong Java 9, cung cấp một môi trường nhanh chóng, thân thiện cho phép khám phá, thử nghiệm các tính năng ngôn ngữ Java và thư viện mở rộng.
Khi mã được nhập vào điều khiển JShell, nó được xử lý bởi JLine – thư viện Java cho phép nhập liệu trên bảng điều khiển. Sau khi nhập, mã được phân tích cú pháp bởi bộ phân tích JShell (JShell parser) để xác định loại (phương thức, biến, v.v.).
Bộ phân tích JShell được gói trong một lớp với các quy tắc sau:
- Tất cả câu lệnh import được đặt ở đầu lớp này.
- Các biến, phương thức và khai báo lớp trở thành các thành viên static của lớp này.
- Các biểu thức và khai báo được gói trong một phương thức bên trong lớp này.
Sau bước này, mã nguồn sinh ra được phân tích và biên dịch thành Bytecode bởi trình biên dịch Java, sau đó gửi đến một tiến trình JVM đang chạy để tải và thực thi mã.
Trong đoạn mã dưới đây, ta có thể khởi động JShell bằng cách gõ "jshell" tại dòng lệnh.
C:\Users\User>jshell | Welcome to JShell -- Version 9.0.4 | For an introduction type: /help intro jshell>
Khi JShell khởi động, ta có dấu nhắc lệnh chờ nhập. Có hai loại lệnh: lệnh nội bộ JShell bắt đầu bằng "/" và mã Java.
Ví dụ dưới đây in cả lệnh nội bộ "/list" và mã Java System.out.println().
jshell> System.out.println("Tutorialspoint") Tutorialspoint jshell> /list 1 : System.out.println("Tutorialspoint")