如何在Java 9的JShell中宣告類和介面?
JShell可以提供一個互動式shell,用於快速原型設計、除錯和學習Java和Java API,無需main()方法,也無需在執行前編譯程式碼。
類的宣告
我們可以像編寫Java語言程式碼一樣宣告一個類。JShell可以檢測到類的完成。
在下面的程式碼片段中,我們可以宣告一個帶有兩個引數和一個方法的Employee類。
C:\Users\User>jshell | Welcome to JShell -- Version 9.0.4 | For an introduction type: /help intro jshell> class Employee { ...> String empName; ...> int age; ...> ...> public void empData() { ...> System.out.println("Employee Name is: " + empName); ...> } ...> } | created class Employee
在下面的程式碼片段中,我們可以為Employee類建立一個物件,併為empName和age設定值。
jshell> Employee emp = new Employee() emp ==> Employee@73846619 jshell> emp.empName = "Adithya" $3 ==> "Adithya" jshell> emp.age = 20 $4 ==> 20 jshell> emp.empData() Employee Name is: Adithya
介面的宣告
我們也可以像宣告類一樣宣告一個介面。宣告介面後,JShell會檢測到宣告的完成。
在下面的程式碼片段中,我們可以宣告一個帶有三個抽象方法的Animal介面。
jshell> interface Animal { ...> public void eat(); ...> public void move(); ...> public void sleep(); ...> } | created interface Animal
在下面的程式碼片段中,我們得到一個錯誤,提示Cat類沒有覆蓋Animal介面中定義的抽象方法。這與Java語言中實現介面的類概念類似。
jshell> class Cat implements Animal { ...> } | Error: | Cat is not abstract and does not override abstract method sleep() in Animal | class Cat implements Animal { | ^----------------------------
廣告