在方法参数中使用final关键字的目的是什么?

时间:2014-04-01 03:47:25

标签: java final

我最近看到了像

这样的方法
public void display(final String toDisplay){

}

我想知道方法参数中final关键字的用途。

顺便说一下:我已经在SO上搜索了它,所以请不要贬低;我知道它是重复的。  我知道这个问题已被多次询问并相信我经历了所有这些问题但却不理解任何答案。请在回答时假设您正在与初学者交谈。

4 个答案:

答案 0 :(得分:4)

final变量意味着您无法更改该值。

例如final int x=9;,之后如果您使用x=6;进行更改,则无法编译。

所以在你的情况下

public void display(final String toDisplay){

}

在这个方法中,你允许一个String参数,然后在该方法中,如果你试图改变那么它就不会编译。

答案 1 :(得分:2)

假设你的方法做了复杂的计算,所以不小心你可能不会改变 toDisplay 变量的值,这是我可以说的主要原因。

答案 2 :(得分:1)

确保实现不会更改引用。

答案 3 :(得分:0)

它只是告诉编译器这个方法不能改变参数指向的东西。