final 关键字 限定方法参数

本文深入探讨Java中final关键字的使用,包括其在不同场景下的功能与限制,如修饰类、方法、变量等,以及如何正确应用final来提高代码质量和避免错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当定义一个方法A,

1.如果参数是基本类型,并且参数用了final 来修饰 方法A里面对参数是不可以修改的,编译的时候就会报错。


如果参数不用final来修饰那么在方法里是可以修改该参数的,但是对于调用者来说 参数仍然不变没有影响、



打印出来的i 变量和str 变量都是main 方法里设置的。


2.如果参数是一个对象类型的那么这个对象是不可以在A方法里从新NEW ,给定新的指向的。

不管用不用final 修饰方法参数Object ,对象参数Object 的指针指向是不变的。

对象的属性值是可以改变的。

总结:



Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。 
final类不能被继承,没有子类,final类中的方法默认是final的。 
final方法不能被子类的方法覆盖(重写)但可以重载,也可以被继承。 
final成员变量表示常量,只能被赋值一次,赋值后值不再改变。 
final不能用于修饰构造方法。 
注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值