final:最终的
1.final可以用来修饰的结构:类、方法、变量
2.final 用来修饰一个类:此类不能被其他类所继承 比如:String类、System类、StringBuffer类
-
final 标记的类不能被继承。 提高安全性,提高程序的可读性。
-
final 标记的变量 ( 成员变量或局部变量 ) 即称为常量。 名称大写,且只能被赋值一次
- final修饰局部变量时:尤其是修饰形参时,表明形参是一个常量,当我们调用此方法,给
常量形参赋值后,就只能在方法体中使用此形参,不能再进行赋值
- final修饰属性:可以考虑赋值的位置有构造器、显式初始化、代码块初始化
public class FinalTest {
final int WIDTH = 10;//显式初始化赋值
final int HEIGHT;
final int LENGTH;
{
LENGTH = 15; //代码块赋值
}
public FinalTest(){
HEIGHT = 2;// 构造器赋值
}构造器调完之后对象就已经有了,对象一有,相应的属性也就被加载了,这个时候属性就应该有值了
public FinalTest(int n){
HEIGHT = n;
}
}
- final标记的方法不能被子类重写。 比如: Object类的getClass()方法
- static final 用来修饰属性叫:全局常量