在 Java 9 的 JShell 中,哪些修飾符不能用於頂級宣告?


JShell 是一種互動式工具,用於學習 Java 語言和對 Java 程式碼進行原型設計。它是一個REPL(Read-Evaluate-Print-Loop,讀-求值-列印-迴圈),可以對一經輸入就求值的宣告語句表示式進行求值並立即將結果列印到 JShell。此工具在命令列提示符下執行。

publicprotectedprivatestaticfinal 等修飾符不允許用於頂級宣告,可以帶著警告忽略它們。synchronizednativeabstractdefault 等關鍵字不允許在頂級方法中使用,可能會出現錯誤

在下面的程式碼片段中,我們建立了finalstatic 變數。它會向用戶打印出一條警告訊息,即“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"

更新於: 2020 年 4 月 1 日

140 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.