Java-final最终修饰符

最终修饰符

final修饰的 方法 可以和静态方法、普通方法重载

final可以修饰:属性,方法,类,局部变量(方法中的变量)

final修饰的 属性 的初始化可以在编译期,也可以在运行期,初始化后不能被改变

final修饰的 属性 跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值

final修饰的 属性 ,表明该属性是一个常数创建后不能被修改

final修饰的 方法参数 ,表示在变量的生存期中它的值不能被改变(方法参数中的final引用,意味着在该方法内部,我们不能改变参数句柄指向的实际东西,也就是说在方法内部不能给形参句柄再另外赋值)

final修饰的 方法 ,表示该方法在子类中不能被重写

final修饰的 类 ,表示该类不能被继承。

被fianl修饰的变量不会自动改变类型,当2个final修饰相操作时,结果会根据左边变量的类型而转化

对于基本类型数据,final 会将值变为一个常数(创建后不能被修改);
对于对象引用(句柄),final 会将句柄变为一个常数(声明时,必须将句柄初始化到一个具体的对象,而且不能再将句柄指向另一个对象。但是,对象的本身是可以修改的。这一限制也适用于数组,数组也属于对象,数组本身也是可以修改的。)。

final只对引用的"值"(即内存地址)有效,它迫使引用只能指向初始指向的那个对象,改变它的指向会导致编译期错误。至于它所指向的对象的变化,final是不负责的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值