清淨
  • Java

    • Java 基础
  • 框架

    • Flyway
    • MapStruct
    • Spring Cloud
  • 中间件

    • Elasticsearch
    • Redis
    • RabbitMQ
    • Kafka
  • 三剑客

    • HTML
    • CSS
    • JavaScript
  • 进阶

    • jQuery
    • ECMAScript6
    • TypeScript
  • Vue

    • Vue2
    • Vue3
    • VuePress
  • Linux
  • Jenkins
  • Maven
  • MySQL
  • 插件工具
  • 代码集成
  • 其它

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • 设计模式
迁移日志
订阅号
微信订阅号
微信订阅号
GitHub
  • Java

    • Java 基础
  • 框架

    • Flyway
    • MapStruct
    • Spring Cloud
  • 中间件

    • Elasticsearch
    • Redis
    • RabbitMQ
    • Kafka
  • 三剑客

    • HTML
    • CSS
    • JavaScript
  • 进阶

    • jQuery
    • ECMAScript6
    • TypeScript
  • Vue

    • Vue2
    • Vue3
    • VuePress
  • Linux
  • Jenkins
  • Maven
  • MySQL
  • 插件工具
  • 代码集成
  • 其它

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • 设计模式
迁移日志
订阅号
微信订阅号
微信订阅号
GitHub
  • Java 基础

    • 简介
    • 第一个 Java 代码
    • 数据类型
    • 变量
    • 进制
    • 导包
    • 输入
    • 数据类型转换
    • 运算符
    • 随机数
    • 流程控制
    • 访问修饰符
    • 面向对象
    • 重载与重写
    • 程序执行流程
    • 方法参数的值传递
    • 多线程
    • Java 常用类
    • 枚举
    • 注解 Annotation
    • 集合
    • 泛型
    • IO
    • 网络编程
    • 反射
    • lambda
    • 类加载
    • 正则表达式
    • 字符集

变量

变量存在于内存中,程序结束或电脑重启后变量失效;而硬盘中的数据具有持久性。

变量命名规范

第一个字符必须是各国语言(中文也可)、下划线、钱(¥、$),其它位置上的字符可以含有数字。

成员变量和局部变量

  • 局部变量不是能使用任何权限修饰符(如 private、public、protected、static 等),但是可以用 final 修饰。
  • 成员变量(非 static 修饰)是放在堆中的,而局部变量是放在栈中的
  • 全局变量(成员变量)有默认值,局部变量使用前必须赋初值(系统不会给默认值),main 函数中的也是局部变量
// 以下两个代码都会在编译期间报错
// 不能在方法中声明 static 修饰的属性
public void test2() {
    static int a = 1;
}
public static void test3() {
    static int a = 1;
}

public static void main (String[] args) {
    int a;
    // 编译报错,未赋初值
    System.out.println(a);
}

作用范围

变量的作用范围是离它最近的一对大括号中的整个区域。

想要编辑此页?
上次更新: 2023/3/18 19:48
贡献者: djf
←数据类型进制→
[ 纸上得来终觉浅绝知此事要躬行 ]
Copyright © 2021-present Junfeng Dai
蜀ICP备2021009537号