final: 继承的弊端:打破了代码的封装性,final的出现正好弥补了这一弊端 final关键字: 1-final是一个修饰符,可以修饰类,方法,变量; 2-final修饰的类不能被继承 3-final修饰的方法不可以被覆盖 4-final修饰的变量是一个常数,只能被赋值一次并且要在定
final关键字:
1-final是一个修饰符,可以修饰类,方法,变量;
2-final修饰的类不能被继承
3-final修饰的方法不可以被覆盖
4-final修饰的变量是一个常数,只能被赋值一次并且要在定义时就将其赋予某值
5-final修饰的对象,对象是可变的,不可变只是“变量对对象的引用”
被定义final的常量要用大写字母表示,各单词之间用下划线_来隔开。
实例一:
class Father01{
final String FATHER01_NAME = "张三";
final int FATHER01_AGE = 20;
final void show(){
// age=9; //错误!!!age被定义为final,定义时已经被赋值,不能再被赋值
System.out.println("姓名: " + FATHER01_NAME);
}
}
final class Father02{
}
class Son01 extends Father01{
// public void show() { //错误!!!被final定义的方法不能被覆盖
//
// }
}
//class Son02 extends Father02{ //错误!!!被final定义的类不能被继承
//
//}