java 参数final类型

Posted 再等三分钟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 参数final类型相关的知识,希望对你有一定的参考价值。

今天看到别人写的接口中参数又很多都是final类型,final就是不可改变的意思,那么接口参数的类型为

什么要设置为final呢,首先涉及到java的参数是值传递还是地址传递,基本类型例如int都是值传递,这个不用多说。

那么参数在传递的时候是值传递还是地址传递,写了个接口测试一下。



   Person person = new Person();
   person.setAge(11);
   person.setName("tan");
    System.out.println(person.toString());
   change(person);
    System.out.println(person.toString());

public static Person change(Person p)
    p.setName("tttt");
    return p;

打印结果:

Person@4c75cab9

Person@4c75cab9

内存地址是一样的,所以参数传递的是地址,就意味着你是可以随便修改参数的值的,很危险,所以为了保证安全,有些参数的值是不需要修改的,设置为final就可以了。

以上是关于java 参数final类型的主要内容,如果未能解决你的问题,请参考以下文章

Java中final修饰参数的作用

为什么匿名内部类参数必须为final类型

java 中的 final 关键字都有哪些用法

java语言方法中定义final类型的入参有什么用意?

java中final关键字

为什么匿名内部类参数必须为final类型