zoukankan      html  css  js  c++  java
  • 关于final

    1,关于final

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

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

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

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

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

    2,使用final变量的好处

    final变量不可变,最大好处就是线程安全

    3,能否创建一个包含可变属性的不可变对象

    可以,不可变的是引用,可变的是内容.如下面代码,final只是限制的acSysUser的引用不能变,但是对他内存中实际存的值是没有限制的

    final AcSysUser  acSysUser = new AcSysUser();
    acSysUser.setUserId("222");

    4.关于final,finalize()和finally

    (1)三者没有任何相关性,

    (2)final是一个修饰符,用于修饰变量,方法和类.如果 final 修饰变量,意味着该变量的值在初始化后不能被改变.

    (3)finalize()方法是在对象被回收之前调用的方法,给对象自己最后一个复活的机会.但是该方法由Finalizer线程调用,但调用时机无法保证.

    (4)finally是一个关键字,与 try和catch一起用于异常的处理,finally{}一定会被执行,在此处我们通常用于资源关闭操作.

  • 相关阅读:
    P4168 [Violet]蒲公英
    P3320 [SDOI2015]寻宝游戏
    P2487 [SDOI2011]拦截导弹
    P3338 [ZJOI2014]力(FFT)
    P1975 [国家集训队]排队
    P4103 [HEOI2014]大工程
    虚树小结
    LVS初步
    常见指针定义解读
    可epoll队列
  • 原文地址:https://www.cnblogs.com/excellencesy/p/14381836.html
Copyright © 2011-2022 走看看