Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Các quy tắc cần tuân thủ trong JShell Java 9?

Java 9 giới thiệu công cụ REPL (Read-Evaluate-Print-Loop) tương tác: JShell, cho phép thực thi đoạn code và nhận kết quả ngay. Một snippet là chỉ thị dùng cú pháp Java chuẩn. Đại diện cho một biểu thức, câu lệnh hoặc khai báo đơn lẻ.

Dưới đây là một số quy tắc khi dùng JShell.

Quy tắc cho công cụ JShell:

  • Snippet như import declaration, class declaration, method declaration, interface declaration, field declaration, statement, và primary expression.
  • Khai báo package không được phép. Code JShell đặt dưới package transient JShell.
  • Access modifier: public, protected, private, và modifier: final, static không được phép ở khai báo top-level. Nếu cung cấp sẽ bị bỏ qua kèm cảnh báo.
  • Modifier: default và synchronized không cho phép ở khai báo top-level. Tuy nhiên cho phép trong ngữ cảnh nested.
  • Modifier abstract chỉ cho phép ở class.
  • Khi input người dùng không hoàn chỉnh (ví dụ gõ System.out bỏ qua println), API auto-completion của JShell nhắc thêm input.
  • Nếu input hoàn chỉnh nhưng thiếu dấu chấm phẩy, JShell có thể tự động thêm.

Đoạn mã mẫu dưới tạo class Employee với getter cần thiết và khởi tạo bằng toán tử new.

Đoạn mã

jshell> class Employee {
   ...>     private String firstName;
   ...>     private String lastName;
   ...>     private String designation;
   ...>     public Employee(String firstName, String lastName, String designation) {
   ...>         this.firstName = firstName;
   ...>         this.lastName = lastName;
   ...>         this.designation = designation;
   ...>     }
   ...>     public String getFirstName() {
   ...>         return firstName;
   ...>     }
   ...>     public String getLastName() {
   ...>         return lastName;
   ...>     }
   ...>     public String getDesignation() {
   ...>         return designation;
   ...>     }
   ...>     public String toString() {
   ...>         return "Name = " + firstName + ", " + lastName + " | " +
   ...>                "designation = " + designation;
   ...>     }
   ...> }
| created class Employee
jshell> Employee emp = new Employee("Sai", "Adithya", "Content Developer");
emp ==> Name = Sai, Adithya | designation = Content Developer