static final修饰的静态变量修改后更新到服务器,无法生效的问题。

原创 2016年08月30日 15:07:08

       今天在工作中碰到这样一个问题,有一个类作为专门的常量类,将工程中常用的一些变量定义在了里面。今天我要修改其中的某个变量。修改完后将编译好的.class文件更新到了服务器上,但是重启服务器后发现始终没有变化,还是以前的值。我就将服务器的缓存清理,然后再重启,依然没有改变。反反复复又更新上去,又清理缓存,又重启弄了好多次还是不行。

      我把服务器上的.class文件反编译,发现明明已经修改了,但是运行起来就仍然还是以前的值,感觉整个人都不好了。我就想看看是不是我调用的地方被写死了,其实没有调用到这个常量类,就把调用这个常量的类反编译了一看,果然调用的地方直接就写的是原来的那个值,而不是我修改后的值。终于恍然大悟,因为被static修饰过的类在编译的时候也就是.java转成.class的时候就已经编译到了引用这个常量的地方去了。 也就是说,如果修改了这个static修饰的常量类,那么所有引用过这个常量的地方都要编译一次后更新到服务器上去阿。。。。

    所以有些用不了一两次的常量和何必写成static的,还是要慎用。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

static 静态变量加载

  • 2012-03-09 14:04
  • 198B
  • 下载

Android开发调试-static静态变量与如何定义全局变量的问题

static修饰的静态变量,使用很方便,在不同的类和包中都可以使用,在虚拟机中单独占用内存,没错,这些都是它们的优点,不过在项目上线后,才发现static有一些不太好的地方。 在查看项目的崩溃信息时...

类中static静态变量与const常量成员的初始化

1、static 成员在类外初始化2、const 成员(及引用成员)在类的构造函数初始化列表中初始化3、static const /const static 成员可以在类中初始化(实际上是申明)也可以...

C# static静态变量用法

静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等。 静态全局变量 定义:在全局变量前,加上关键字 static 该变量就被定义成为了一个静态全局变量。 特点:   A、该变量...

static静态变量

静态变量 类型说明符:static。静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都...
  • ff_tt
  • ff_tt
  • 2017-07-19 09:56
  • 184

static 静态变量

生物都是有一定的记忆功能的,如何让程序也有记忆的功能呢? 需要用到静态变量普通的局部变量,在每一次调用函数时都会进行一下初始化,并且在函数调用结束时,值就从内存里消失了 function t() {...

静态变量 static的解析

static有两个作用 第一个作用: 修饰变量,变量又分为局部和全局变量,但他们都存在内存的静态区               静态全局变量,作用于仅限于变量被定义的文件。其他文件即使用extern声...

php static静态变量及方法详解

static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”。 如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个...

静态变量static和extern外引用

静态变量--加static关键字的变量,特点: (1)在全局数据区中分配内存,每次对其值得修改都会保留结果,直至程序结束。 (2)若静态变量没显示初始化,那会被自动初始化为0,并且只能初始化一遍。 1...

静态变量详解(Static)

static静态变量的理解 静态变量 类型说明符是static。 静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)