zoukankan      html  css  js  c++  java
  • 静态变量一定要先声明后赋值

    《编写高质量代码     改善java程序的151个建议》

    public class ClientA {
        static
        {
            i = 100;
        }
        public static int  i =1;
    
        public static void main(String[] args) {
    
            System.out.println(i);
    
        }
    }
    ------------------------------------
    结果为1
    -------------------------------------
    public class ClientA {
    
        public static int  i =1;
        static
        {
            i = 100;
        }
        public static void main(String[] args) {
    
            System.out.println(i);
    
        }
    }
    ------------------------------
    结果100

    JVM 先声明空间,然后再赋值的
    int i = 100
    再JVM中是分开执行的,等价于
    int i ; //分配空间
    i = 100 //赋值
    静态变量是在类初始化时首先加载的,JVM会去查找类中所有的静态声明,然后分配空间,这是还没有赋值,只是进行了地址空间的分配,
    之后JVM会根据类中的静态赋值(包括静态类赋值和静态块赋值)的先后顺序来执行。

  • 相关阅读:
    HTML与css语法笔记
    HTML标记含义
    HTML-入门篇day01
    计算器
    九宫格
    5.28第十三周
    5.21 不用交得作业及答案
    5.22 上交作业
    5.15作业
    5.7作业
  • 原文地址:https://www.cnblogs.com/alway-july/p/6651580.html
Copyright © 2011-2022 走看看