java-final笔记

作者: yangc91 | 来源:发表于2018-07-16 16:27 被阅读2次

    java编程思想学习笔记

    • 编译器常量:可以在编译时执行计算式,必须 是基本数据类型、携带final关键字、使用之前必须被初始化
    • 对象引用:final使引用恒定不变,一旦引用被初始化指向一个对象,则无法再指向另一个对象,对象本身属性可变

    空白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修饰词,但不会添加任何意义

    相关文章

      网友评论

        本文标题:java-final笔记

        本文链接:https://www.haomeiwen.com/subject/gspbpftx.html