目
录
为什么会有final关键字
由于继承中有一个方法重写的现象,而有时候我们不想让子类去重写父类的方法.这对这种情况java就给我们提供了一个关键字: final (final 最终的 )
final可以修饰变量,成员方法和类
- final 修饰变量,此变量就会变为常量
- final 修饰方法,此方法,不能被子类重写,但是可以被继承。
- final 修饰类,此类不能被继承。但是此类可以继承其他没有被final修饰的类.
final修饰局部变量
- 修饰基本数据类型时,指的是值不能被改变
- 修饰引用数据类型时,指的是地址值不能被改变
class Fu {
public static final int NUM = 100; //final修饰的变量变为常量,不可再重写赋值
//公共的静态常量(常量名一般为大写)
public final void ff() { //final修饰的方法
System.out.println("父类final方法");
}
}
class Zi extends Fu {
}
//创建一个测试类
public class Test(){
public static void main(String[] args){
final Scanner sc=new Scanner(System.in); //拿final修饰的引用数据类型
//Scanner=new Scanner(System.in); //会报错,因为其地址值不允许更改
System.out.println(Fu.NUM); //可以拿类名调用常量
//Fu.NUM=10; 会报错.不能重新赋值
}
}
(小编也在努力学习更多哟!以后会多多分享哒!)
希望对友友们有所帮助!!!!