java web 学习

java-final笔记

2018-07-16  本文已影响2人  yangc91

java编程思想学习笔记

空白final

java允许生成“空白final”,即声明为final但又为给定初值,这种情况必须在类的构造方法中初始化

public class FinalLearn {
  // 定义时赋值
  private final int i = 1;

  // 声明 空白final属性
  private final int n;

  public FinalLearn() {
    // 空白final属性必须在构造方法中赋值
    n = 3;
  }

  public FinalLearn(int m) {
    // 多个构造方法时,都需给空白final属性赋值
    n = m;
  }
}

final参数

当参数列表中的参数被final修饰后,在方法内无法修改参数所引用的对象

  public void withFinal(final Integer i) {
    // error
    // i = new Integer(1);
  }

  public void withoutFinal(Integer i) {
    // ok
    i = new Integer(1);
  }

final方法

方法锁定,禁止继承类重写方法

final类

不允许被其它类继承

由于final类不允许被继承,所以其所有方法都隐士指定为final,因为无法覆盖,也可以显示添加final修饰词,但不会添加任何意义

上一篇 下一篇

猜你喜欢

热点阅读