Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

การอ้างอิงไปข้างหน้าใน JShell ใน Java 9 คืออะไร


JShell เป็น บรรทัดคำสั่ง เครื่องมือ ที่ช่วยให้เราป้อนคำสั่ง Java (คำสั่งง่าย คำสั่งผสม หรือแม้แต่เมธอดและคลาสทั้งหมด) ประเมินและพิมพ์ผลลัพธ์

ไปข้างหน้า ข้อมูลอ้างอิง เป็นคำสั่งที่อ้างอิงถึง วิธีการ , ตัวแปร หรือ คลาส ที่ไม่มีอยู่ในรหัสใด ๆ ที่เราได้พิมพ์ใน JShell เมื่อโค้ดป้อนและประเมินตามลำดับใน JShell ส่งต่อ . เหล่านี้ ข้อมูลอ้างอิง ไม่ได้รับการแก้ไขชั่วคราว JShell รองรับการอ้างอิงไปข้างหน้าใน วิธี ร่างกาย , ส่งคืน ประเภท , พารามิเตอร์ ประเภท , ตัวแปร ประเภท และ ภายใน คลาส .

ในข้อมูลโค้ดด้านล่าง สร้างเมธอด forwardReference() ในเจเชลล์ ไม่สามารถเรียกใช้เมธอดนี้จนกว่าจะมีการประกาศตัวแปร หากเรากำลังพยายามเรียกเมธอดนี้ ระบบจะส่งข้อความเตือนว่า "พยายามเรียกเมธอด forwardReference() ซึ่งไม่สามารถเรียกใช้ได้จนกว่าจะประกาศตัวแปร notYetDeclared

C:\Users\User>jshell
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro

jshell> void forwardReference() {
...>       System.out.println(notYetDeclared);
...>    }
| created method forwardReference(), however, it cannot be invoked until variable notYetDeclared is declared

jshell> forwardReference()
| attempted to call method forwardReference() which cannot be invoked until variable notYetDeclared is declared


ในข้อมูลโค้ดด้านล่าง เราได้ประกาศ "notYetDeclared " ตัวแปรที่ส่งคืนสตริง สุดท้าย หากเราเรียก forwardReference() ใน JShell จากนั้นจะพิมพ์ "ประกาศตัวแปร" .

jshell> String notYetDeclared = "variable is declared"
notYetDeclared ==> "variable is declared"

jshell> forwardReference()
variable is declared