Java grammar定义了ModifiersOpt:{Modifier}.修饰符定义为公共,受保护,私有,静态等之一.{x}表示x出现零次或多次.
我们知道public public不是有效的标识符.这是否意味着修改器列表中的任何元素(例如public)在{Modifier}中仅出现一次? {修饰符}是否有任何“标准”解析器组合器?
解决方法:
修饰符可以出现零次或多次.正如aioobe所说,虽然在语法上可以接受,但例如public private在语义上是无效的.严格按照语法来说,有很多小情况可以满足要求,但编译器不允许.
The grammar below uses the following
BNF-style conventions:{x} denotes zero or more occurrences
of x.