java基础

java基础之关键字final

2018-01-09  本文已影响0人  巴拉巴拉老男人

final关键字最常修饰的是变量和方法,也可以修饰类,下面我们从这三个方面来了解一下关键字final的基本用法

对于一个final变量,分为以下两种情况:

1. 如果是基本类型的变量,则其值一经初始化之后是不可以改变的
2. 如果是引用类型的变量,则对其初始化之后便不能再让其指向另一个对象
public class FinalVariableTest
{
            private final int f1 = 1;
            private final List<String> l = new ArrayList<String>();
            public static void main(String[] args)
            {
                FinalVariableTest fvt = new FinalVariableTest();
                // 编译错误 The final field FinalVariableTest.f1 cannot be assigned
                // fvt.f1 = 3;
                fvt.l.add("123");
                // 编译错误 The final field FinalVariableTest.l cannot be assigned
                // fvt.l = new ArrayList<>();
            }
}

对于一个final修饰的方法,也分为两种情况:

1. 把方法锁定,以防止任何继承类修改它的定义
2. 效率   在早期的Java实现版本中,会将final方法转为内嵌调用。但是如果方法过于庞大,可能看不到内嵌调用带来的任何性能提升。在最近的Java版本中,不需要使用final方法进行这些优化了。

更深入理解final关键字,请点击此处链接

上一篇 下一篇

猜你喜欢

热点阅读