java基础之关键字final

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修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 7,645评论 0 11
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,677评论 18 399
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 5,542评论 4 12
  • Advanced Language Features 知识点:一. static修饰符 static修饰符可以用来...
    风景凉阅读 3,290评论 0 0
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 4,949评论 0 5

友情链接更多精彩内容