空字符串是合法的 field/method 名称吗?

Is the empty string a legal field/method name?

根据 JVM 使用的 class 文件格式,字段或方法是否可以合法地将空字符串作为其 "unqualified name"?我在相关部分可以找到的唯一真正限制是:

An unqualified name must not contain any of the ASCII characters . ; [ / (that is, period or semicolon or left square bracket or forward slash).

但我仍然无法相信这不会在其他地方引起问题。空字符串作为 field/method 名称真的有效吗?

没有. JVMS SE 8 §4.2.2:

An unqualified name must contain at least one Unicode code point

JVMS SE 7 没有这个注释。