(1)final用于声明属性,方法和类,表示属性不可变,方法不能被重写,类不能被继承
使用final修饰的引用不可变,指的是引用不可变,但是引用内容可以变
final StringBuffer s = new StringBuffer("Hello"); s.append(" world"); System.out.println(s)
结果是:Hello World
但是
final StringBuffer s = new StringBuffer("Hello"); s = new StringBuffer(" World");
就会报错,所以final修饰的引用不可以变,但是内容是可以更改的
final方法:该方法不能被子类重写。
final参数:表示该参数在这个函数内部不允许被修改。
final类:表示该类不能被继承,所有方法不能被重写。但是成员变量是可以变的;String和StringBuffer类不能被继承
(2)finally作为异常处理的一部分,表示一定会被执行
(3)finalize用于资源回收。