zoukankan      html  css  js  c++  java
  • Java 中的编译期常量是什么?使用它有什么风险?

    编译期常量指的就是程序在编译时就能确定这个常量的具体值
    非编译期常量就是程序在运行时才能确定常量的值,因此也称为运行时常量
    定义上来说,声明为final类型的基本类型或String类型并直接赋值(非运算)的变量就是编译期常量,即:

    //编译时常量
    final int i = 4;
    final String str = "dasd";

    // 非编译期常量
    final String str1 = new String("dasd");


    Random rand = new Random(47);
    //这个也是非编译期常量,为运行时常量
    final int i4 = rand.nextInt(20);

    提示:

    这种方式存在的一个问题是你使用了一个内部的或第三方库中的公有编译时常量,但是这个值后面被其他人改变了,部署了一个新的jar,但是你的客户端仍然在使用老的值。为了避免这种情况,当你在更新依赖 JAR 文件时,确保重新编译你的程序。这里的更新JAR文件,重新编译程序是为了更新你使用的编译期常量的值!

    ————————————————
    版权声明:本文为CSDN博主「弗兰随风小欢」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_32575047/article/details/78846264

  • 相关阅读:
    高效 JavaScript
    什么是QName【转】
    gson的简单使用方法
    SWT的FormLayout
    SWT/JFace常用组件容器类
    更改swing应用程序标题栏默认图标
    面试也是自己对自己的面试
    关于Android图片cache处理方法
    【Java】_2_Java程序入门第二课
    【算法和数据结构】_9_线性结构_队列_续_1
  • 原文地址:https://www.cnblogs.com/peter-jun/p/15091508.html
Copyright © 2011-2022 走看看