- final的变量的值不能够被改变
- final的成员变量
- final的局部变量(形参)
- final的方法不能被重写
- final的类不能被继承
TestFinal.java
public class TestFinal { public static void main(String[] args) { T t = new T(); t.i = 9;//i无法被指定值,会报错. } } class T { final int i = 8; //这个时候i这个值不允许改变 public void m(final int j) { j = 9; //不能再方法中进行改变 } } class TT extends T { public void m() { j = 9; //会报错,无法被继承 } }
这个东西只读,不能写,在继承中重写依旧不可以,用来锁定.JDK中的final类有String,Math,boolean,不被任何人继承,用来封装保护程序很不错.
网友评论