• final关键字


    基本用法:

    1、final修饰类表示类不能被继承

    2、final修饰的方法不能被覆盖

    3、final修饰的变量不能修改,是指引用的地址值不能修改,并且final修饰的变量必须初始化(1、直接赋值 2、在构造方法中赋值)

    final也可以用于提高运行效率

    4、直接赋值的final常量在编译阶段就会赋值。

    编译之后用反编译工具打开.class文件

     

    可以清楚的看到在testFinalProperty这个方法体中str1直接用"test"代替,在编译阶段就被赋值了。

    5、方法的内联

    final修饰的方法,虚拟机不会执行正常的方法调用(入栈出栈,方法返回值),会直接转化为内联调用,直接展开方法,减少调用开销,已空间换时间,如果final定义的方法方法体很大时这样得不偿失。

  • 相关阅读:
    内建函数
    urllib学习
    Jupyter Notebook介绍、安装及使用教程
    grep详解、sed详解、awk详解
    正则表达式
    RedisClient.SetRandomMember
    redis 队列
    hmGet
    redis trim
    大O符号
  • 原文地址:https://www.cnblogs.com/wdfordream/p/10443974.html
Copyright © 2020-2023  润新知