[Java 编程思想]第七章

final

  • 两种理由:设计和效率

  • -许多编程语言都有某种方法,来向编译器告知一块数据是恒定不变的。有时数据的恒定不变是很有用的,比如
  • 一个永不改变的编译时常量
  • 一个在运行时被初始化的值,而你不希望它被改变。

  • final static基本类型全用大写字母命名。

  • 空白final
    空白final是指被声明为final但又未给定初值的域
public class BlankFinal {
    private final int i;    
    public BlankFinal() {
        i = 1;
    }
}

必须在域的定义处或者每个构造器中用表达式对final进行赋值


  • final方法禁止方法覆盖时,可以用final。

  • final类不允许继承,不允许做任何变动

  • 只有非private方法才可以被继承。

你可能感兴趣的:([Java 编程思想]第七章)