Java有意思的现象——执行注释后的代码

今天看到这样一个有意思的图片,给大家分享下:

image-20200508014429297

问题来了,为什么代码里面已经被注释的部分也可以执行呢?

其实也很简单,查一下\u000d是个啥玩意就行了,果不其然,这个代表回车(CR:Return);而另一个类似的\u000a则是换行(LF:Line Feed)。其实也就是\r\n啦。

而Java在解析代码的时候,是会按照Unicode编码去解析,而不是把它当作字符串。因此,注释自然是无效啦~


额外试了下其他语言,这个用法在GoPythonNim等语言中并不可以哦!