为什么有人会创建额外的局部变量只是为了在其上添加最终关键字?

2023-12-30

我遇到过类似这样的代码:

public void foo(String param1) { 
    final String param1F = param1;
    ...
}

我怀疑作者不知道他可以将 Final 关键字直接放在方法签名中,因为在方法的其余部分中他只使用 param1F 但我很好奇是否有人知道这可能有用?


如果您需要从匿名类访问变量,则这是必需的,例如:

Runnable f(int i) {
    final int i2 = i;
    return new Runnable() {
        public void run() {
            System.out.println(i2);
        }
    };
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么有人会创建额外的局部变量只是为了在其上添加最终关键字? 的相关文章

  • 从我们的 Java 程序执行 Java 程序

    I used Runtime getRuntime exec 但它抛出了IOException如下 java io IOException CreateProcess c error 5 at java lang Win32Process
  • FOP apache - 支持希伯来字母

    过去几天我一直在调查 FOP apache 中对希伯来字母的支持 用于生成 PDF 文件的项目 我看到以前有一个问题 我不太明白是否解决了 如果有支持 有人可以向我展示 重定向到简单的示例 为我提供带有希伯来字母的 XSL FO 文件 当使
  • wsimport Xauthfile 错误

    我正在尝试为我们公司网络外部的受 SSL 保护的 Web 服务 在 Microsoft Biztalk 上 生成客户端 也称为消费者 所需的 java 帮助类 我们只能通过代理访问它 并且无法更改 Web 服务本身的任何内容 这是我提供给
  • GSON:如何从 Json 中获取不区分大小写的元素?

    下面显示的代码在以下情况下效果很好JSON对象包含jsonKey因为它被传递给该方法 我想知道 是否有一种方法可以获取分配给不区分大小写的键表示的值 Example public String getOutputEventDescripti
  • 从java管理unix进程的最佳方法是什么?

    我正在寻找一些简单的任务 例如列出用户的所有正在运行的进程 或者通过pid等杀死特定进程 来自Java的基本unix进程管理 有没有相对成熟且有文档的库 我可以从 JVM 运行外部命令 然后解析标准输出 错误 但这似乎需要大量工作 而且一点
  • Amazon SQS 旧配置文件格式警告

    我正在将消息发布到 Amazon SQS 队列 启动时 我在日志中收到以下警告 http nio 9090 exec 2 BasicProfileConfigLoader The legacy profile format requires
  • 为什么java.util.Collection不直接定义next()、hasNext()呢?

    If 收藏定义有下一个 代替迭代器 hasNext 我们可以更容易地编写循环 while collection hasNext 代替 Iterator it collection iterator While it hasNext 当然 我
  • JOOQ初始化DAO最佳方法

    我想知道初始化 JOOQ 生成 DAO 的最佳实践 现在 我使用以下方法来初始化 JOOQ 生成的 DAO 在以下情况下 Student Dao 是 JOOQ 生成的 public class ExtendedStudentDAO exte
  • Spring 在使用 JUnit 的单元测试中不自动装配

    我使用 JUnit 测试以下 DAO Repository public class MyDao Autowired private SessionFactory sessionFactory Other stuff here 正如您所看到
  • Java错误:线程“main”中出现异常java.lang.ArrayIndexOutOfBoundsException

    我是 Java 初学者 正在学习该课程算法 由普林斯顿大学提供 我按照书上的例子 二分查找在第 9 页 import edu princeton cs algs4 import java util Arrays public class B
  • MyBatis 遵循 JPA 吗?

    作为我的第一个 ORM 我已经使用 myBatis 几个月了 现在我正在尝试学习其他东西 例如 Hibernate JPA 起初很难理解 Hibernate 和 JPA 之间的区别 经过几分钟的研究 我明白 JPA 只是一个规范 Hiber
  • 将变量从一个 jsp 发送到另一个 jsp

    我有一个 JSP 文件jsp 1 jsp和另一个 JSP 文件jsp 2 jsp 我已经包括了jsp 2 jsp in jsp 1 jsp using 现在我需要某个元素上的单击事件 在该事件中 我想将字符串变量传输到包含的 jsp 中 假
  • Hibernate 过滤器仅在从数据库加载数据后应用吗?

    我在网上发现了一些相互矛盾的信息 有谁知道Hibernate过滤器是否影响生成的sql 或者只是过滤从数据库读取的数据 休眠过滤器影响 where 子句生成的 SQL The Hibernate 过滤器简介 http java dzone
  • 将 person.city.name 添加到 TableView

    我有一个 TableView 和一些 POJO 并且想要将其中一个属性绑定到 TableView 然而 该属性也是一个 POJO 并且应该有一个属性显示在 TableView 中 这是我的代码
  • 使用Optional进行空检查

    我想使用可选实用程序在 JDK8 中执行空检查 这是我正在编写的代码 它给了我一个错误 java util Optional stringToUse java util Optional of childPage getContentRes
  • 使用 Maven 时如何在 Tomcat 7.0 中将上下文路径设置为根(“/”)

    我有一个maven项目 pom xml包含tomcat插件
  • Gradle 将多个依赖项提取到不同的目录

    我正在尝试将多个依赖项提取到不同的目录中 我尝试了以下方法 configurations cppDependencies dependencies cppDependencies com group artifact1 1 0 cppDep
  • 如何用java实现FTP?

    我正在使用 FTP 我必须在客户端将消息嵌入到图像文件中 并且我必须将其发送到服务器 在服务器端我必须检索图像文件并然后我将检索该消息 我已经完成了嵌入消息并使用密码学和隐写术技术检索消息 我正在寻找如何将该文件从客户端传输到服务器 我必须
  • 我可以为每个片段单独提供工具栏吗?如何处理导航抽屉

    在我的应用程序中 某些页面的工具栏中有自定义视图 有些片段具有透明工具栏 有些片段具有坐标布局滚动 因此 我决定为每个片段单独设置工具栏 我想知道这是否是一个好的做法 如果有人已经这样做了 请分享代码或示例 您可以在片段中使用自定义工具栏
  • 从 Eclipse 启动时创建新的 JFrame 时 Java 将关闭。没有抛出异常

    我正在开发一个在 Eclipse 中开发的 Java 项目 直到今天一切都很好 昨天 在完成我的项目之前 我最后一次运行它以检查一切是否正常并且运行正常 但是今天 当我启动该项目并按下 运行 时 我的应用程序就神秘地关闭了 没有崩溃 没有消

随机推荐