关于java编译的问题

关于java编译的问题

如此安好 发布于 2021-11-24 字数 88 浏览 637 回复 1

String a = "a";

testDto.setA(a);



testDto.setA("a");

有区别吗

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

睫毛上残留的泪 2021-11-25 1 楼

String a="a";
System.out.println(a);

System.out.println("b");

对应字节码

0: ldc           #2                  // "a"压栈
2: astore_1                          // "a"出栈并赋给局部变量a
3: getstatic     #3                  // 将System.out对象压栈
6: aload_1                           // 局部变量a压栈
7: invokevirtual #4                  // Method java/io/PrintStream.println:(Ljava/lang/String;)V


10: getstatic     #3                  // 将System.out对象压栈       
13: ldc           #5                  // "b"压栈
15: invokevirtual #4                  // Method java/io/PrintStream.println:(Ljava/lang/String;)V