1、final语法口诀:
1、final可以修饰变量,被final修饰的变量被赋初始值之后,不能对它重新赋值。
2、final可以修饰方法,被final修饰的方法不能被重写。
3、final可以修饰类,被final修饰的类不能派生子类。
2、final修饰的变量:1、被修饰的实例变量必须显示指定初始值,而且只能在如下三个位置指定初始值:
定义final实例变量时指定初始值;
在非静态初始化块中为final实例变量指定初始值;
在构造器中为final实例变量指定初始值;
2、对于final类变量而言,同样显示指定初始值,而且final类变量只能在2个地方指定初始值;
定义final类变量时指定初始值;
在静态初始化块中为final类变量指定初始值;
3、final修饰的局部变量一样被显式地赋初始值,与普通变量不同的是:final修饰的局部变量被赋初始值之 后以后再也不能会final局部变量重新赋值。
总结:final修饰符的第一个简单功能:被final修饰的变量一旦被赋初始值,final变量的值以后将不会被改变。
第二个功能:对于一个使用final修饰的变量而言,如果定义该final变量时就指定初始值,而且这个初始值可以在编译时就确定下来,那么这个final变量将不再是一个变量,系统会将其当成“宏变量”处理,也就是说,所有出现的该变量的地方,系统将直接把它当成对应的值处理。