参数保证为非空?

2022-09-02 01:44:15

在下面的程序中,如果执行了此操作(例如通过命令行),args JVM是否独立保证不为空?

public class test {
    public static void main(String[] args) {
    }
}

答案 1

简短的回答:是的,它可能具有长度0,但不会为空。


答案 2

我在 Java 虚拟机规范“加载、链接和初始化”部分找不到任何要求参数为非 null 的语句。

因此,必须假设这是允许的,并且从学理上讲,您的程序应该准备好处理参数。即使在典型的运行时环境中,例如使用该程序启动Java程序以在Linux上启动JVM,参数也永远不会是.nullnulljavanull


推荐