19、final有哪些用法?

作者: RUMyCola | 来源:发表于2022-08-08 07:13 被阅读0次

    final有哪些用法?

            final也是很多面试喜欢问的地方,但我觉得这个问题很无聊,通常能回答下以下5点就不错了:

            1、被final修饰的类不可以被继承

            2、被final修饰的方法不可以被重写

            3、被final修饰的变量不可以被改变.如果修饰引用,那么表示引用不可变,引用指向的内容可变.

            4、被final修饰的方法,JVM会尝试将其内联,以提高运行效率

            5、被final修饰的常量,在编译阶段会存入常量池中.

    除此之外,编译器对final域要遵守的两个重排序规则更好:

            在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序. 初次读一个包含final域的对象的引用,与随后初次读这个final域,这两个操作之间不能重排序.

    相关文章

      网友评论

        本文标题:19、final有哪些用法?

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