大家好,今天小编关注到一个比较有意思的话题,就是关于j***a语言静态初始化的问题,于是小编就整理了2个相关介绍j***a语言静态初始化的解答,让我们一起看看吧。

  1. C语言静态变量初始化在什么阶段?
  2. 为什么要给静态数据初始化?

C语言静态变量初始化在什么阶段?

C语言静态变量的初始化在程序运行之前的编译阶段进行,即在程序开始执行之前就完成了静态变量的初始化操作。静态变量在程序整个运行过程中只会被初始化一次,而且它的初始化值是在编译期间确定的。

java语言静态初始化-java 静态初始化
(图片来源网络,侵删)

为什么要给静态数据初始化?

这是因为,如果不初始化的话,系统会像初始化全局数据变量一样,按照变量的类型进行初始化,比如static int a;如果不初始化,系统将初始化为0。

初始化是赋一个初始值,而定义是分配内存。静态数据变量在类中仅仅是声明,没有定义,所以要在类的外面定义,实际上是给静态数据变量分配内存。

java语言静态初始化-java 静态初始化
(图片来源网络,侵删)

所以说,要给静态数据初始化。

到此,以上就是小编对于j***a语言静态初始化的问题就介绍到这了,希望介绍关于j***a语言静态初始化的2点解答对大家有用。

java语言静态初始化-java 静态初始化
(图片来源网络,侵删)