Java中复用类-final关键字.md

[TOC]
final类基本含义为无法改变,但在数据、方法和类三种情况下的使用不同。

final数据

  1. final关键字告知编译器数据恒定。
  2. final的引用在数据类型、对象描述时,功能不同。对基本数据类型,final使数据恒定不变;但是对对象引用,final限定的是不能更改描述对象,但对像的值变动是允许的,同样适用于数组此对象
  3. static final域时,只占据一段不改变的存储变量。可以认为对所有对象数值进行锁止。

注意事项

  1. final 描述数据时,不能更改数据变量。
  2. final 描述数组时final int[] a={},由于没有更改对象,也没有static,可以更改数组的值,不可以更改数组大小
  3. final 描述对象时,不能更改对象。
  4. 带有恒定初始值的final static基本类型的命名方式为VAL_THR
  5. final static数据类型不可以通过创建第二个对象而改变,纵使对象为随机方法
  6. final允许空白声明,在使用前必须初始化并赋值

final方法

使用原因

  1. 锁定方法,防止继承类修改含义。
  2. 确保在继承中使方法行为保存不变,并且不被覆盖。
class PersonalLoan{
    public final String getName(){
        return "personal loan";
    }
}

class CheapPersonalLoan extends PersonalLoan{
    @Override
    public final String getName(){
        return "cheap personal loan"; //compilation error: overridden method is final
    }
}

finalprivate关键字

Java默认情况下,将private关键字都指定为final。由于无法取用,也就无法更改。
当试图覆盖private类型时,只不过生成了一个新的方法。

final类

使用目的

当不打算类被继承,也不允许别人这样使用,使用final来修饰类。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值