非法的Unicode 转义问题
最近在编译工程时,遇到了非法的Unicode 转义。因为是第一次遇到,所有在此分享,拓展的同时增加理解。
分析:
- 编译器无报错,说明不是编译期异常
- 注释掉功能性代码,只留下打印语句,同样报错,说明应该是注释部分有问题
- 根据编译器提示行,进一步分析发现下图中的第14行中包含多个斜杠,考虑为转义问题
- 查阅相关资料:
java是允许在注释以及代码中使用\u开头的Unicode转义字符的,但是要求转义必须有效,否则编译器会报告错误。
(下图中我添加的路径中就出现了\u,并且’\u’ 后面的是\untitled,无法匹配到字典,所以抛出错误)
测试不同注释情况
- 上图是单行
- 多行如下:一样会转义
- 文档注释如下:一样会转义
小结:
java是允许在注释以及代码中使用\u开头的Unicode转义字符的,但是要求转义必须有效,否则编译器会报告错误。(注释包含单行,多行,文档注释)。