final:最终的
被final修饰后的值都是最终值,永远不会改变。
final修饰变量
被final修饰变量用的很多的地方,接下来被final修饰变量阐述的内容:
基本数据类型的变量被final修饰,变量一旦赋值之后永远不能更改,引用类型的变量被final修饰变量,变量一旦赋值之后便不能再让其他指向另一个对象
mian函数与被final修饰成员变量不在同一个类中,定义final修饰成员变量:
- final int num = 22;
- public final String name="小明";
mian函数与被final修饰成员变量在同一个类中,定义final修饰成员变量:
public class Test {
public final static String name="小明";
public static void main(String[] args) {
final int i = 21;
System.out.println(name);
}
}
分析:
mian函数与被final修饰成员变量在同一个类中,mian函数调用被final修饰成员变量属性时,被final修饰成员变量加上static关键字,否则被final修饰成员变量不加上static关键字,mian函数调用被final修饰成员变量属性,不是成员变量属性,而是局部变量属性,这时直接会错
当一个变量被final修饰后,这个变量就称为常量
常量的特点:在声明的时候必须赋初始值,不可以先声明后复制
-
Final int num = 22; 正确
-
final int num; num = 22;错误
final方法
Final 修饰的方法称为最终方法,该方法只能继承,不能重写;可以重载
如果父类的函数被final修饰后,子类中不能重写父类的函数
final修饰的类
Final 修饰的类称为最终类,不能被继承
也可以说,如果一个类永远不会让被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final