在 Java 9 的 JShell 中,哪些修飾符不能用於頂級宣告?
JShell 是一種互動式工具,用於學習 Java 語言和對 Java 程式碼進行原型設計。它是一個REPL(Read-Evaluate-Print-Loop,讀-求值-列印-迴圈),可以對一經輸入就求值的宣告、語句和表示式進行求值並立即將結果列印到 JShell。此工具在命令列提示符下執行。
public、protected、private、static 和 final 等修飾符不允許用於頂級宣告,可以帶著警告忽略它們。synchronized、native、abstract 和default 等關鍵字不允許在頂級方法中使用,可能會出現錯誤。
在下面的程式碼片段中,我們建立了final 和 static 變數。它會向用戶打印出一條警告訊息,即“Modifier 'final' or 'static' not permitted in top-level declarations, ignored(修飾符 'final' 或 'static' 不允許用於頂級宣告,已忽略)”。
示例 1
C:\Users\User\>jshell | Welcome to JShell -- Version 9.0.4 | For an introduction type: /help intro jshell> final int x = 0 | Warning: | Modifier 'final' not permitted in top-level declarations, ignored | final int x = 0; | ^---^ x ==> 0 jshell> x = 1 x ==> 1
示例 2
jshell> static String str = "Tutorix" | Warning: | Modifier 'static' not permitted in top-level declarations, ignored | static String str = "Tutorix"; | ^----^ str ==> "Tutorix"
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP