学习资源:拉勾教育
final关键字的基本概念
final
可以修饰类、成员方法以及成员变量。
final关键字的使用方式
final
关键字修饰类体现在该类不能被继承,主要用于防止滥用继承,如:java.lang.String
类等。final
关键字修饰成员方法体现在该方法不能被重写但可以被继承,主要用于防止不经意间造成重写,如:java.text.Dateformat
类中的format
方法等。final
关键字修饰成员变量体现在该变量必须初始化且不能改变,主要用于防止不经意间造成改变,如:java.lang.Thread
类 中MAX_PRIORITY
等。
package com.lagou.task08;
public /*final*/ class FinalClass {
public final void show() {
System.out.println("FinalClass类中的show方法");
}
}
package com.lagou.task08;
public class SubFinalClass extends FinalClass{
// @Override
// public void show() {
// super.show();
// }
public static void main(String[] args) {
SubFinalClass sfc = new SubFinalClass();
sfc.show();
}
}
package com.lagou.task08;
public class FinalMemberTest {
//private final int cnt = 1; // 显示初始化
private final int cnt;
/*{
cnt = 2; // 构造块中进行初始化
}*/
public FinalMemberTest() {
cnt = 3; // 构造方法体中进行初始化
}
public static void main(String[] args) {
// 声明FianlMemeberTest类型的引用指向该类型的对象
FinalMemberTest fmt = new FinalMemberTest();
// 打印成员变量的数值
System.out.println("fmt.cnt = " + fmt.cnt);
}
}