Java注释代码执行方法解析

作者:菩提树下的杨过 时间:2023-09-28 00:16:01 

直接上代码:


@Test
public void testUnicode() {
 String a = "Hello";
 // \u000d a="world";
 System.out.println(a);
 // \u000a a="hello world!";
 System.out.println(a);
}

猜一猜,最后会输出什么?

world
hello world!

是的,没看错,那二行看似“注释掉的代码”,被执行了!

原因:java编译器会处理unicode字符,\u000d以及\u000a 正好对应“\r”回车、“\n”换行,经过编译器处理后,等效于下面的代码:


@Test
public void testUnicode() {
 String a = "Hello";
 //
 a="world";
 System.out.println(a);
 //
 a="hello world!";
 System.out.println(a);
}

个人建议:正式项目中,严禁在注释中使用这一类unicode字符,否则如果利用这个特性干点坏事,埋个坑,基本上很难发现!

来源:https://www.cnblogs.com/yjmyzz/p/let-commented-java-code-run.html

标签:Java,注释,代码,执行
0
投稿

猜你喜欢

  • Android 手写热修复dex实例详解

    2022-11-06 08:01:40
  • Java中的复合数据类型

    2022-10-05 08:08:08
  • springboot 正确的在异步线程中使用request的示例代码

    2023-11-24 22:36:13
  • Android Handler机制详解原理

    2023-10-29 22:03:44
  • 在c#中使用servicestackredis操作redis的实例代码

    2022-06-23 14:28:48
  • C# 对MongoDB 进行增删改查的简单操作实例

    2022-03-07 14:10:26
  • Android自定义有限制区域图例角度自识别涂鸦工具类中篇

    2021-06-16 16:21:46
  • Java 栈与队列超详细分析讲解

    2023-08-15 01:09:07
  • 完美解决SpringCloud-OpenFeign使用okhttp替换不生效问题

    2023-07-03 11:27:25
  • springboot 2.0 mybatis mapper-locations扫描多个路径的实现

    2023-07-12 02:30:53
  • SpringBoot异步调用方法并接收返回值

    2023-08-16 22:33:49
  • Maven发布封装到中央仓库时候报错:no default secret key

    2022-09-18 17:48:43
  • Android仿IOS UIAlertView对话框

    2023-09-28 09:00:12
  • C#检查指定对象是否存在于ArrayList集合中的方法

    2023-07-28 00:45:17
  • 【IntelliJ IDEA】Maven构建自己的第一个Java后台的方法

    2023-09-24 20:11:16
  • Java 爬虫服务器被屏蔽的解决方案

    2022-11-06 13:23:46
  • Java Springboot整合支付宝接口的教程详解

    2023-11-06 19:41:49
  • Android Bitmap和Drawable的对比

    2021-11-16 06:03:41
  • Spring bean为什么需要依赖注入

    2022-01-24 11:07:21
  • 浅谈Springboot之于Spring的优势

    2022-01-08 02:35:29
  • asp之家 软件编程 m.aspxhome.com