Java 变量类型与命名规则

变量是内存中存放数据的「盒子」,有名字、有类型、有值。按声明位置不同,Java 变量分为局部变量、实例变量、静态变量与方法参数四类。

四类变量一览

变量类型声明位置生命周期默认值
局部变量方法或代码块内部方法执行期间无,必须初始化
实例变量类内、方法外(无 static)随所属对象创建与销毁有默认值
静态变量类内、方法外(有 static)随类加载而存在,全局共享一份有默认值
方法参数方法名后面的括号里方法调用期间由调用方传入

综合示例

一个类里同时演示四类变量:

public class VarDemo {
    int num = 5;             // 实例变量:属于对象
    static String tag = "静态"; // 静态变量:属于类

    void test(int p) {       // p 是方法参数
        int local = p + 1;   // 局部变量,必须初始化
        System.out.println(local);
    }

    public static void main(String[] args) {
        VarDemo d = new VarDemo();
        System.out.println(d.num);       // 输出:5
        System.out.println(VarDemo.tag); // 输出:静态(类名直接访问)
        d.test(10);                      // 输出:11
    }
}

局部变量必须初始化

局部变量没有默认值,不赋值就使用会直接编译报错:

// 片段需放进 main 方法中运行
int a;
// System.out.println(a); // 编译错误:变量 a 可能尚未初始化
int b = 1;
System.out.println(b);    // 输出:1

成员变量的默认值

实例变量与静态变量有默认值:数值型为 0、char 为 '\u0000'、boolean 为 false、引用类型为 null,因此未赋值的成员变量可以直接读取。

变量命名规范

  1. 小驼峰命名:变量名、方法名首字母小写,后续单词首字母大写,如 studentNamemaxScore
  2. 大驼峰命名:类名每个单词首字母大写,如 HelloWorld
  3. 见名知意:用表达含义的英文单词,避免 a、b、x 这类无意义的名字。
  4. 常量全大写:常量(static final)全部大写、单词间用下划线,如 MAX_VALUE
  5. 参数命名同样用小驼峰;包名全部小写,如 com.example.demo

有效与非法命名示例

合法非法原因
name、age1name不能以数字开头
_temp、$pricemy name不能包含空格
userNameclass关键字不可用
MAX_SIZE张三中文虽能编译,但不规范

变量按位置分为局部/实例/静态/参数四类,默认值与生命周期各不相同;命名遵守驼峰与见名知意,代码就像好文章一样易读。

笔记加载中…