final关键字

《JAVA编程思想》 P140

三种用途:

1.修饰成员属性

  public final int i = 1;//代表属性值不可变

  public final SomeClass class = new SomeClass(); //代表属性指向的引用不可变

2.修饰方法参数

  public String test(final SomeClass class){}; //代表在方法内部不能改变对象的引用,如class=newSomeClass();

3.修饰方法

  public final String test(final SomeClass class){};//代表此方法无法在此类的子类中被覆盖,从而被改写方法逻辑

4.修饰类

  public final class SomeClass {}//代表此类不可被继承

原文地址:https://www.cnblogs.com/yfzhou528/p/13432091.html