final 可以用来修饰的结构: 类、方法、变量
final 用来修饰一个类: 此类不能被其他类所继承。
比如: String类、System类、StringBuffer类
final 用来修饰方法。表明此方法不可以被重写
比如:Object 类中 getclass();
final 用来修饰变量,此时的 "变量" 就称为一个常量
4.1 final 修饰属性,可以考虑赋值的位置有:显式初始化、代码块中初始化、构造器中初始化
4.2 final 修饰局部变量:
尤其是使用 final 修饰形参时,表明此形参是一个常量。当我们调用此方法时,给常量形参赋一个实参。
一旦赋值以后就只能在方法体内使用此形参,不能进行重新赋值。
static final 用来修饰属性:全局常量
package com.klvchen.java3; public class FinalTest { final int WIDTH = 0; final int LEFT; final int RIGHT; // final int DOWN; { LEFT = 1; } public FinalTest() { RIGHT = 2; } public FinalTest(int n) { RIGHT = n; } // public void setDown(int down) { // this.DOWN = down; // } public void doWidth() { // width = 20; } public void show() { final int NUM = 10; //常量 // NUM += 20; } public void show(final int num) { // num = 20; System.out.println(num); } public static void main(String[] args) { int num = 10; num = num + 5; FinalTest test = new FinalTest(); test.show(10); } } final class FinalA{ } //class B extends FinalA{ // //} //class C extends String{ // //} class AA{ public final void show() { } } class BB extends AA{ // public void show() { // // } }