java中final用在参数中表示啥?

author author     2023-03-19     507

关键词:

public static HelloService getHelloServiceProxy(final HelloService helloService)其中的final用在参数中表示什么?

主要分两种情况:第一,用final修饰基本数据类型;第二,用final修饰引用类型。
第一种情况,修饰基本类型(非引用类型)。这时参数的值在方法体内是不能被修改的,即不能被重新赋值。否则编译就通不过。例如:
public static void valid(final int ag)

ag=9;
ag=10;

错误提示:
第二种情况,修饰引用类型。这时参数变量所引用的对象是不能被改变的。作为引用的拷贝,参数在方法体里面不能再引用新的对象。否则编译通不过。例如:
public static void valid(final String[] ag)

ag=new String[9];

这个的提示和上面是一样的。:“ The final local variable param2 cannot be assigned. It must be blank and not using a compound assignment.“
但是对于引用,如果我是这样,则不会报任何错,完全能编译通过。
public static void valid(final String[] ag)

ag[0]="5";
System.out.println(ag);

所以,final这个关键字,想用的话就用基本类型,还是很有作用的。引用类型,还是算了吧。
参考技术A final 修饰变量指变量的引用不可变,你给出的例子指的是helloService这个引用不可重新赋值。。本回答被提问者和网友采纳 参考技术B final修饰的如果是常量表示是不可变的
如果是变量,表示只能赋一次值,赋值后就不能在改变
参考技术C final 表示这个变量在初始化后不可更改及重新赋值 参考技术D final变量不可修改
final方法不可覆盖
final类不可继承

“InfoDictionary 版本”在信息属性列表(plist 文件)中表示啥?

】“InfoDictionary版本”在信息属性列表(plist文件)中表示啥?【英文标题】:Whatdoes"InfoDictionaryversion"signifyininformationpropertylist(plistfile)?“InfoDictionary版本”在信息属性列表(plist文件)中表示什么?【发布时间】:2011-08-1... 查看详情

“InfoDictionary 版本”在信息属性列表(plist 文件)中表示啥?

】“InfoDictionary版本”在信息属性列表(plist文件)中表示啥?【英文标题】:Whatdoes"InfoDictionaryversion"signifyininformationpropertylist(plistfile)?“InfoDictionary版本”在信息属性列表(plist文件)中表示什么?【发布时间】:2011-08-1... 查看详情

java基础-final关键字用在不同处的作用及区别

1、final修饰的类:不能被其他类继承;2、final修饰的方法:不能被子类重写3、final修饰的变量  先理解两个概念:基本类型变量、引用变量。  基本数据类型变量:存的是数值本身,存放在栈内存中;  引用类型变量:存... 查看详情

/dev/hda5在linux中表示啥?

为什么A选项不对代表分区(Partition),比如P1:/dev/hda1P2:/dev/hda2L1:/dev/hda5L2:/dev/hda6L3:/dev/hda7L4:/dev/hda8L5:/dev/hda9P1~4保存给了Primary和Extended分区。一个硬盘的结构如下:MBR|主分区1|主分区2|主分区3|主分区4(扩展分区)|其中扩展分区可... 查看详情

java中final修饰参数的作用

在方法参数前面加final关键字就是为了防止数据在方法体中被修改。主要分两种情况:第一,用final修饰基本数据类型;第二,用final修饰引用类型。第一种情况,修饰基本类型(非引用类型)。这时参数的值在方法体内是不能被... 查看详情

java参数final类型

今天看到别人写的接口中参数又很多都是final类型,final就是不可改变的意思,那么接口参数的类型为什么要设置为final呢,首先涉及到java的参数是值传递还是地址传递,基本类型例如int都是值传递,这个不用... 查看详情

java异常处理中关键字throws,throw,try,catch,finally分别代表啥意义?在try块中可以抛出异常吗?

...个“动词”,紧接在try语句块之后。而throws是“名词”,用在函数方法名后functionA()throwsExceptionethrow用在程序中明确表示这里抛出一个异常。throws用在方法声 查看详情

java中final关键字作用是?

...依对象而有所不同,却有保持其恒定不变的特征。4、final参数当函数参数为final类型时,你可以读取使用该参数,但是无法改变该参数的值。注:父类的private 查看详情

java方法的参数为啥有时会加上final关键字

...java中对象的传输可以认为是引用传递。在方法中如果对参数中的内容进行修改的话,调用发起方的数据也会同步发生变化。而设置了final就确保,不会也不能对于参数进行修改,保证了调用发起方数据的安全。 参考技术B对于对... 查看详情

将 java 方法参数设为 final

】将java方法参数设为final【英文标题】:Makingjavamethodargumentsasfinal【发布时间】:2011-05-0822:21:56【问题描述】:final与下面的代码有何不同。将参数声明为final有什么好处。publicStringchangeTimezone(Timestampstamp,TimezonefTz,TimezonetoTz)return..... 查看详情

学习总结

...break提前跳出一个块byte基本数据类型之一,字节类型case用在switch语句之中,表示其中的一个分支catch用在异常处理中,用来捕捉异常char基本数据类型之一,字符类型class声明一个类const保留关键字,没有具体含义continue回到一个... 查看详情

Sonar 中的包裹缠结指数数据表示啥?

】Sonar中的包裹缠结指数数据表示啥?【英文标题】:WhatdoespackagetangleindexdataindicateinSonar?Sonar中的包裹缠结指数数据表示什么?【发布时间】:2013-02-2515:11:28【问题描述】:在对我的项目运行Sonar分析后,我在7个轴之一(参见第... 查看详情

面向对象---final关键字

final在java中表示的意思是最终,也称为完结器,可以用final关键字声明类、属性、方法,在声明时需要注意以下几点:1.使用final声明的类不能有子类。2.使用final声明的方法不能被子类所覆盖。3.使用final声明的变量即称为常量,... 查看详情

java中final关键字

...  自定义常量:把变量用final修饰后就是常量  形式参数被final修饰:    基本类型:基本类型的值在该方法内部不能被修改    应用类型:引用类型的地址值不能发生改变,但是内容可以改变 查看详情

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

...方法中的内部类),由于本身就是在方法内部(可出现在形式参数定义处或者方法体处),因而访问方法中的局部变量(形式参数或局部变量)是天经地义的.是很自然的2) 为什么JAVA中要加上一条限制:只能访问final型的局部变量?3) J... 查看详情

局部内部类final文章2

...内部类和局部内部类只能访问final变量为什么匿名内部类参数必须为final类型1)从程序设计语言的理论上:局部内部类(即:定义在方法中的内部类),由于本身就是在方法内部(可出现在形式参数定义处或者方法体处),因而访问方法中的... 查看详情

finally关键字

finally:用在异常处理的最后一个语句块无论是否产生异常都要被执行~~~Java代码 publicfinalclassFinallyTestpublicstaticvoidmain(String[]args)trythrownewNullPointerException();catch(NullPointerExceptione)System.out.println("程序抛出了异常");finallySystem.out.print... 查看详情

enum是java关键字吗?

...reak 提前跳出一个块byte 基本数据类型之一,字节类型case 用在switch语句之中,表面其中的一个分支  catch 用在异常处理中,用来捕捉异常char 基本数据类型之一,字符类型class 类const 保留关键字,没有具体含义continue 回到一个... 查看详情