我正在浏览这个article on java9并且遇到了这一行,它指出 Java是面向语句的,而REPL是面向表达式的。
有人可以解释这两者之间的区别吗?
答案 0 :(得分:1)
一个非常快速且巧合的可见区别是,通过使用分号(;
)终止表达式,可以将以下类型的表达式转换为语句。
因此,在HelloWorld.java
课程中,以下内容无法编译 -
int z = 1 //(; missing)
Jshell在其提示符下成功将值存储为:
jshell> int z = 1
z ==> 1
Morevoer
Statements 大致相当于自然语言中的句子。一份声明 形成执行的完整单元。
而Expression
是由变量,运算符和方法调用组成的构造,它们是根据语言的语法构造的,其值为单个值。