final 关键字 限定方法参数

来源:互联网 发布:oppo状态栏美化软件 编辑:程序博客网 时间:2024/06/04 00:54

当定义一个方法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类型的。

0 0
原创粉丝点击