gpt4 book ai didi

java - Eclipse 会编译出未使用的局部变量吗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:25:28 27 4
gpt4 key购买 nike

考虑以下代码:

 public String foo(){
String bar = doStuff();
return bar;
}

然后:

 public void test(){
doSomeLogicHere();
String result = foo();
}

请注意,在 test 中,我在函数末尾得到了一个名为 result 的字符串。 Eclipse 知道这是一个未使用的变量,因为它会发出警告。我想知道的是,这些字符串是否被编译出来,就好像调用只是 foo() 而没有保存返回的字符串?如果我在不使用 String result = 时注释掉它,我会减少内存消耗还是没有关系,因为 String 仍然生成并在 foo() 中返回?

我在像这样编写的应用程序中有一些调试逻辑,我想知道是否值得为发布/不使用它们时注释掉所有字符串。

最佳答案

据我所知,编译器不会自动删除未使用的变量。这通常是优化器/混淆器的工作。

例如,在 Android 中 ProGuard在 Release模式下构建 Android 应用程序时删除所有未使用的变量。

关于java - Eclipse 会编译出未使用的局部变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15102985/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com