常量和变量分析

Posted change97

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常量和变量分析相关的知识,希望对你有一定的参考价值。

常量

  • 特征:
    • 公共的
    • 静态的
    • 不可改变的
    • 必须初始值(一旦赋值,不可改变)

例如:

public static final String str = "我终身不可变";

变量

可分为成员变量、全局变量。
  • 可变的,
  • 值不固定的
变量使用时的规范
  • 变量定义后可以不赋值,使用时在赋值。不赋值不能使用
public static void main(String[] args) {
          int x;
          x = 20; // 为x赋值20
          System.out.println(x);// 读取x变量中的值,再打印
     }
  • 变量使用时有作用于的限制
public static void main(String[] args) {
          int x = 20;
          {
              int y = 20;
          }
          System.out.println(x);//读取x变量中的值,再打印
          System.out.println(y);//读取y变量中的值失败,失败原因,找不到y变量,因为超出了y变量作用范围,所以不能使用y变量
          }
错误提示:Exception in thread "main" java.lang.Error: Unresolved  compilation problem
  • 变量不可以重复定义
public static void main(String[] args) {
          int x = 10;
          double x = 5.5;// 编译失败,变量重复定义
     }
错误提示:Exception in thread "main" java.lang.Error: Unresolved  compilation problem

以上是关于常量和变量分析的主要内容,如果未能解决你的问题,请参考以下文章

静态代码分析-概念:敏感性

静态代码分析-概念:敏感性

14.VisualVM使用详解15.VisualVM堆查看器使用的内存不足19.class文件--文件结构--魔数20.文件结构--常量池21.文件结构访问标志(2个字节)22.类加载机制概(代码片段

go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 变量的生命周期:变量逃逸分析 —— go编译器自动决定变量的内存分配方式(堆还是栈),提高程序运行效率

8.常量分析及变量交换时空分析

程序运行过程的内存分析。