一文搞懂Java中所有变量概念!

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
大数据开发治理平台 DataWorks,不限时长
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 一文搞懂Java中所有变量概念!

变量

变量分类

image.png

实例变量
  • 定义:在类中定义的,任何方法、构造方法、块之外的变量都是实例变量。

    ​ 实例变量是独立于对象的,每个对象都有自己的一份实例变量。

    ​ 实例变量存储在对象的内存之中,并且可以被该类的所有方法共享和访问。

  • 定义规则

    • 可以用四种访问修饰符进行修饰
    • 可以用transient、final的特殊修饰符进行修饰,不可以使用abstract、synconized、static等特殊修饰符进行修饰。
  • 特点

    • 与对象强相关。
      • 当使用new关键字创建对象的时候,实例变量同时也被创建;当垃圾回收器回收对象的时候,实例变量也会被销毁。
      • 实例变量是属于类的,需要通过创建一个对象,然后利用对象的引用修改和处理对象的实例变量。
    • 独立性。每个对象中的实例变量都是独立存储的,修改不会造成影响。
    • 可以通过访问修饰符进行修饰。
    • 实例变量不用强制初始化,它有自己的默认值。
全局变量

⭐Java中并不存在全局变量,常通过静态变量来起到全局访问的目的。

静态变量(类变量)
  • 定义:定义在类的内部、方法的外部的属于类的变量。
  • 特点
    • 属于类
      • 不能在方法(静态方法 or 非静态方法)中进行声明
      • 只初始化一次,为静态变量的所有实例所共享
      • 可以直接通过类名.变量名访问
局部变量
  • 定义:定义在方法、构造器或者代码块中

  • 特点(与实例变量存在一定的对应关系)

    • 属于方法、构造器或者代码块
      • 局部变量的生命周期随着方法、构造器、代码块的执行完毕而销毁
      • 局部变量只能在调用这些方法、构造函数或者块的内部使用。
    • 没有默认值(注意局部变量的初始化

    • 不能使用访问修饰符

成员变量

实例变量和类变量都称为成员变量。

代码总结

image.png

目录
相关文章
|
5天前
|
存储 安全 Java
Java面试题:深入探索Java内存模型,Java内存模型中的主内存与工作内存的概念,Java内存模型中的happens-before关系,volatile关键字在Java内存模型中的作用
Java面试题:深入探索Java内存模型,Java内存模型中的主内存与工作内存的概念,Java内存模型中的happens-before关系,volatile关键字在Java内存模型中的作用
11 1
|
6天前
|
Java 开发者
【Java探索之旅】初识多态_概念_实现条件
【Java探索之旅】初识多态_概念_实现条件
30 16
|
6天前
|
Java 程序员
【Java探索之旅】继承概念_语法_父类的成员访问
【Java探索之旅】继承概念_语法_父类的成员访问
26 10
|
4天前
|
监控 Java 调度
Java面试题:描述Java线程池的概念、用途及常见的线程池类型。介绍一下Java中的线程池有哪些优缺点
Java面试题:描述Java线程池的概念、用途及常见的线程池类型。介绍一下Java中的线程池有哪些优缺点
18 1
|
16天前
|
设计模式 算法 Java
简单了解下Java中锁的概念和原理
Java的锁通过java代码实现,go语言的锁通过go实现,python语言的锁通过python实现。它们都实现的什么呢?这部分就是锁的定义和设计模式、算法、原理等一些理论上的东西。
14 1
|
4天前
|
Java API
Java面试题:说明Lambda表达式在Java中的应用,以及函数式接口的概念和作用。
Java面试题:说明Lambda表达式在Java中的应用,以及函数式接口的概念和作用。
11 0
|
4天前
|
Java API
Java面试题:解释死锁的概念,给出避免死锁的常见策略。你能给我一个具体的例子吗?
Java面试题:解释死锁的概念,给出避免死锁的常见策略。你能给我一个具体的例子吗?
6 0
|
5天前
|
存储 设计模式 Java
Java面试题:解释代理模式的概念,并举例说明其应用场景。
Java面试题:解释代理模式的概念,并举例说明其应用场景。
6 0
|
5天前
|
druid Java 数据库连接
Java面试题:解释数据库连接池的概念及其作用,讨论常见的连接池实现。
Java面试题:解释数据库连接池的概念及其作用,讨论常见的连接池实现。
12 0
|
5天前
|
消息中间件 Java 中间件
Java面试题:解释分布式事务的概念,讨论常见的分布式事务解决方案。
Java面试题:解释分布式事务的概念,讨论常见的分布式事务解决方案。
10 0