final 关键字 (Java)

final 关键字

修饰变量

​ 被它修饰的变量不可改变。一旦赋了初值,就不能被重新赋值。

修饰成员变量

​ 成员变量必须 在定义处赋值 或者 在构造方法中赋值。 (两者只能选其一)

修饰局部变量

​ 可以先声明,不马上赋值。但只能赋值一次,不能再修改。

final修饰的是引用变量时只是引用值不能改变。对应的对象内部的属性仍然可变

public class tt {
	final int p = 0;  // 定义处赋值
    final int i; 

    public tt(int i) {  // 构造方法里赋值
        this.i = i;
    }

    public static void main(String[] args) {
        final int b;  // 局部变量可以不马上赋值,但只能赋值一次
        b = 1;
    }
}
修饰方法

​ 该方法不可被子类重写。但是可以被重载!

如果父类方法是 private final ,那么对子类完全不可见;子类也就可以定义自己的同名的方法。这个不是重写了,而是子类自己新定义的方法。

修饰类

修饰的类不能有子类,不能被继承。比如:Math、String

总结: final可用于声明属性、方法和类,分别表示属性不可变,方法不可重写,类不可继承。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值