Java基础:final关键字

final表示最终的,不可变的,可以用来修饰数据、方法和类。

1、final数据

final用来定义一个常量,表示其一旦被初始化后,其值将不能再被改变。

final可以定义一个编译时常量

final int const = 1;//编译时被初始化,此后不能被改变

也可以定义一个运行时被初始化的常量

final int const2 = new Random(20).newxtInt(10);

还可以定义一个空白final(意为被声明为final但是为给定初值)。

public class Final {
    final int j;
    public Final() {
        j=3;    //必须在构造器中进行初始化
    }
}

final参数意味着无法改变该参数的值。主要用来向匿名内部类传递数据。

注意:final修饰引用变量时,只表示引用值是不能改变的,即该引用不能再指向其他对象。但是该引用所指向的对象自身是可以被修改的。数组也是对象。

2、final方法

final方法在继承中无法被改变。

所有的private方法都被隐式地指定为是final的。

试图覆盖一个private方法时编译器不会给出错误信息,但是这并不意味着覆盖成功,而仅仅意味着子类有了一个基类接口未提供的新方法。

3、final类

该类不能被继承。

其内部数据可以选择是否定义为final;其内部方法都被隐式地定义为final,因为无法覆盖它们。

转载于:https://www.cnblogs.com/QuentinYo/p/3603511.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值