1

我想创建一个 java 包名称,其中元素之一是单词“null”。

Java 告诉我这不是一个有效的包:

package org.null.thing;

public class Foo { 
  public static int addThing(int a, int b) { 
    return a + b;
  }
}

我得到的错误是:

error: <identifier> expected
package org.null.thing;
            ^

这是在哪里定义的?这是什么原因?

4

1 回答 1

4

问题是 null 根本不允许作为“标识符”:

标识符是 Java 字母和 Java 数字的无限长度序列,其中第一个必须是 Java 字母。标识符不能与关键字(第 3.9 节)、布尔文字(第 3.10.3 节)或空文字(第 3.10.7 节)具有相同的拼写(Unicode 字符序列)。

因此与其他有趣的想法org.null.thing一样无效。or.int.string

于 2017-05-19T19:47:25.160 回答