为什么下面的代码片段没有给出编译时错误?
Why the below code snippet is not giving compile time error?
声明静态最终实例变量后,一个 ArrayList 对象被分配给它。但是当我添加一个额外的分号时,java 编译器没问题。这是代码。
import java.util.ArrayList;
import java.util.List;
public class FinalExample {
private static final List<String> foo = new ArrayList();; //double semicolons are fine with compiler
public static void main(String[] args){
System.out.println(FinalExample.foo);//Result is - []
}
分号结束语句。因此,当您在 java 中给出多个分号时,编译器会将第二个分号视为空语句并且不会抱怨它。
声明静态最终实例变量后,一个 ArrayList 对象被分配给它。但是当我添加一个额外的分号时,java 编译器没问题。这是代码。
import java.util.ArrayList;
import java.util.List;
public class FinalExample {
private static final List<String> foo = new ArrayList();; //double semicolons are fine with compiler
public static void main(String[] args){
System.out.println(FinalExample.foo);//Result is - []
}
分号结束语句。因此,当您在 java 中给出多个分号时,编译器会将第二个分号视为空语句并且不会抱怨它。