Java 9 แนะนำ REPL แบบโต้ตอบ (Read-Evaluate-Print-Loop ) เครื่องมือ:JShell และทำให้เราสามารถรันโค้ดขนาดสั้นและได้ผลลัพธ์ทันที ตัวอย่าง เป็นคำสั่งที่สามารถใช้ไวยากรณ์ Java มาตรฐานได้ มันแสดงถึงนิพจน์ คำสั่ง หรือการประกาศเดียว
ด้านล่างนี้คือกฎบางส่วนที่เราต้องปฏิบัติตามขณะใช้เครื่องมือ JShell
กฎสำหรับเครื่องมือ JShell:
- ข้อมูลโค้ดเป็นเหมือนการประกาศการนำเข้า การประกาศคลาส การประกาศเมธอด การประกาศอินเทอร์เฟซ การประกาศฟิลด์ คำสั่ง และนิพจน์หลัก
- เดอะ แพ็คเกจ ไม่อนุญาตให้ประกาศ รหัส JShell อยู่ภายใต้ ชั่วคราว แพ็คเกจ JShell
- ตัวแก้ไขการเข้าถึง:สาธารณะ , ได้รับการปกป้อง และ ส่วนตัว และตัวแก้ไข:สุดท้าย และ คงที่ ไม่อนุญาตในระดับบนสุด ประกาศ หากระบุไว้ ระบบจะละเว้นโดยคำเตือน
- ตัวแก้ไข:ค่าเริ่มต้น และ ซิงโครไนซ์ ไม่อนุญาตเลยใน ระดับบนสุด ประกาศ อย่างไรก็ตาม สามารถอนุญาตในบริบทที่ซ้อนกันได้
- เป็น นามธรรม ตัวแก้ไขสามารถใช้ได้เฉพาะในชั้นเรียนเท่านั้น
- เมื่อผู้ใช้ป้อนข้อมูลไม่ครบถ้วน (เช่น เราพิมพ์เฉพาะ System.out และข้าม println ส่วน) JShell API ที่เติมข้อความอัตโนมัติจะแจ้งให้ผู้ใช้ป้อนข้อมูลเพิ่มเติม
- หากการป้อนข้อมูลของผู้ใช้เสร็จสมบูรณ์ แต่มี ไม่มีเครื่องหมายอัฒภาค , JShell สามารถต่อท้ายได้โดยอัตโนมัติ
ในตัวอย่างโค้ดด้านล่าง เราได้สร้าง พนักงาน คลาสด้วยเมธอด getter ที่จำเป็น และสร้างอินสแตนซ์โดยใช้ ใหม่ โอเปอเรเตอร์
ตัวอย่าง
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