Java方法中final关键字修改方法参数的一些小疑问

java方法参数传递方式与C语言相同,都是按值传递
final 关键是修饰方法参数时,只是约束其值不可改变.
当参数类型为基本类型时,参数传递的为该基本类型的字面量.
当final修饰方法参数的类型为基本类型时,则该基本类型参数在该方法中不能被重新赋值
当参数类型为引用类型时,参数传递的为该引用类型值的副本.
当final修饰方法参数的类型为引用类型时,则该引用类型参数在该方法中不能改变对象的引用
-----------------------------------------------------------------------------------
final关键字只能防止变量值的改变。如果被声明为final的变量是一个object reference,那么该reference不能被改变,必须永远指向那个对象。
然而被指向的那个对象可以随意改变。《Practical Java》
------------------------------------------------------------------------------------
接口方法默认均为公共的(public),抽象的(abstract),only public & abstract are permitted modifier for interface method
并且对方法参数只关注类型信息,而不去关注该参数是否为final.
因此接口方法参数声明为final无效,class文件中无体现

但是我有一点不明白,把java的方法参数用final修饰以后对性能有什么影响?能否提高一些。JVM内部被final修饰的参数处理上和没有final修饰的参数有什么不同?或者是否有不同?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值