final英文翻译过来是最终的意思。在Java中final关键字可以修饰类,方法,变量。
- final关键字修饰的类该类不能被继承。
- final关键字修饰的方法不能被子类重写。
-
final关键字修饰的变量时常量,只能赋值一次。
实例1(修饰类):
//Animal类被final关键字修饰
public final class Animal {
void show(){
System.out.println("我是父类....");
}
}
//Pig继承Animal,由于Animal被final关键字修饰,编译会不通过
public class Pig extends Animal {
//编译器提示Cannot inherit from final 'xxxxx.Animal',会编译不通过
}
实例2(修饰变量):
public class Example01 {
public final String name = "小花";
name = "小红";//再次为name赋值编译会报错
}
需要注意的是,使用final关键字修饰类中的成员变量时,虚拟机不会对该变量进行初始化,因此使用final关键字修饰成员变量需要定义时就要赋予一个初始值。
实例3(修饰方法)
//Animal类被final关键字修饰
public class Animal
//show()方法使用final关键字修饰
final void show(){
System.out.println("我是父类....");
}
}
public class Pig extends Animal{
//编译会报错
void show(){
System.out.println(".....");
}
}
在我们编写程序时,如果父类中的某个方法不想被子类重写,我们就可以使用final关键字修饰该方法。
1024节日快乐
加油吧!!!