Java 9 中 JShell 的顶级声明中不允许使用哪些修饰符?
javaobject oriented programmingprogramming更新于 2024/7/19 11:24:00
JShell 是一个用于学习 Java 语言和原型化 Java 代码的交互式工具。它是一个 REPL(读取-求值-打印-循环),一旦输入,它就会评估声明、语句和表达式,并立即在 JShell 中打印结果。此工具从命令行提示符运行。
修饰符(如public、protected、private、static和final )不允许用于顶级 声明,可以忽略并显示警告。关键字(如synchronized、native、abstract和default top-level方法)不允许,并且可能为错误。
在下面的代码片段中,我们创建了final 和static 变量。它向用户打印出一条警告消息:"修饰符'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"