当前位置: 首页 > 面试题库 >

将Java方法参数作为最终参数

厉文栋
2023-03-14
问题内容

final下面的代码之间有什么区别?将参数声明为是有什么好处final

public String changeTimezone( Timestamp stamp, Timezone fTz, Timezone toTz){  
    return ....
}

public String changeTimezone(final Timestamp stamp, final Timezone fTz, 
        final Timezone toTz){
    return ....
}

问题答案:

由于形式方法的参数是局部变量,因此只有在内部匿名类被声明为final的情况下,您才能从内部匿名类访问它们。

这使您不必在方法主体中声明另一个局部最终变量:

 void m(final int param) {
        new Thread(new Runnable() {
            public void run() {
                System.err.println(param);
            }
        }).start();
    }


 类似资料:
  • 问题内容: 我正在寻找一种通过引用传递方法的方法。我知道Java不会将方法作为参数传递,但是,我想找到一种替代方法。 有人告诉我接口是将方法作为参数传递的替代方法,但我不了解接口如何通过引用充当方法。如果我理解正确,那么接口就是一组未定义的抽象方法。我不想发送每次都需要定义的接口,因为几种不同的方法可以使用相同的参数调用同一方法。 我要完成的工作与此类似: 调用如: 问题答案: 编辑:从Java

  • 问题内容: 当前正在学习Java 8 lambda表达式和方法参考。 我想将不带参数且没有返回值的方法作为参数传递给另一个方法。这就是我的做法: 我知道有一组预定义功能接口的,如,但我没有找到一个不带任何参数,而不是产生结果。 问题答案: 真的没关系;也会做。

  • 问题内容: 我试图将选择的A类“获取”方法传递给B类中的方法。我已经将Java PassMethod作为Parameter签出,但是我无法以合理的方式采用接口方法解决问题。我宁愿 不 使用Java 8(lambdas),并尽可能避免反射。我的感觉是,我以错误的方式看待自己的问题。这是我要完成的工作的特定简化示例: 我有一个包含一些字段和get-method的类: 接下来,我将主类实例化为Map的V

  • 美国东部时间2019.05.14下午4:54更新-好的-下面是说明我的问题的代码-可能我花了太长时间才得到这个,而且可能太长了,但我还是Java新手。无论如何——它可以工作,打开窗体,但无法让第二个按钮看到并对“事件”做出反应。我想我现在是在“提高”活动,好吧——至少它在活动中达到了标准。但是,它仍在运行类代码,而不是通过setOnFormStateChange传入的“自定义”代码????我不确定

  • 我有两种几乎相似的方法: 我想写一个通用函数,如下所示: 因此,我想让这样的东西发挥作用: 实际上,我找不到如何传递和作为参数。有什么建议吗?

  • 我正在编写一个方法,如果我想将一个类传递给一个方法,其中代码的一部分包括检查对象是否属于某种类型。这就是我想要的(但显然不行): 关于如何做到这一点有什么提示吗?谢谢!