23 final关键字(完结器)
23 final关键字(完结器)
本质
不可以被修改--------定义的都是最终版本
//记住final和abstract是死对头,不能同时出现在一个类或一个方法上
常规用法
1.修饰类(无法被继承)
final class A{
}
//类A不能被继承
2.在类中修饰属性(常量)
class A{
public final String NAME="张三";
//被final的属性都称为常量,无static叫局部常量,有static的叫全局常量
}
3.在类中修饰方法(不能被重写)
class B{
public final void print(){
System.out.println("final关键字与abstract关键字具有互斥性")
}
}
所以abstract与final不能同时修饰方法,典型错误如下所示:
4.在类中与static搭配修饰属性(全局常量)
class C{
public static final String NAME="张三";
//好处在于类c的NAME可以直接通过类名.常量名调用,而之前类A中的NAME不行
}
典型体现
Math类(不允许被继承)
Math中的常量希望能通过类名.常量名的形式调用
赞 (0)