深入解析Java变量概念:实例变量、局部变量及静态变量的全面认识

网上列出了很多关于变量的理解,也有好有坏。我不知道哪些是对的,哪些是错的。因此,笔者只是根据这些博客和自己的理解来写这篇文章。如果有什么不对的地方,希望读者能够指正,谢谢。

深入解析Java变量概念:实例变量、局部变量及静态变量的全面认识

变量是我们经常使用的东西。刚开始学习Java的时候,经常被各种变量的概念折磨。当时我并没有详细研究它们,但是当我在写类似的文章时,我想把变量作为一个副标题来简单描述一下,但是我发现变量的概念还是比较繁琐的。本文将深入理解Java中这些变量的概念。

变量汇总

那么,变量的概念是什么?到目前为止,目前已知的变量主要包括

下面我们将用各种方法来理解每个概念。

实例变量

实例变量也称为实例变量。未使用 static 关键字定义且位于任何方法、构造函数或块之外的变量是实例变量。实例变量是基于特定实例的,实例变量在实例之间不共享。也就是说,对象的每个实例都有自己的实例变量。这是实例变量的示例

class Fruits {
  
  public String fruitName; // 具有公共访问权限的 fruitName;
  private int fruitNum;   // 具有私有访问权限的 fruitNum;
  
}

可以使用下面的方法来调用实例变量

public class Fruits {
    public String fruitName;
    private int fruitNum;
    public static void main(String[] args) {
        Fruits fruits = new Fruits();
        fruits.fruitName = "strawberry";
        fruits.fruitNum = 100;
    }
}

如何识别实例变量

那么我如何知道一个变量是实例变量呢?以下是定义实例变量的一些规则

实例变量有默认值,这意味着实例变量无需初始化即可使用。以下是常用实例变量的初始值

实例变量的特点

上面我们了解了实例变量的基本特征以及如何区分实例变量。现在我们来谈谈实例变量的特点。

全局变量

全局变量也称为全局变量。如果您有其他语言(例如 C 和 C++)的编程经验,您将接触到全局变量的概念。可以使用下面的代码来创建全局变量

#include
 // 全局变量
 int A;
 int B;
 int Add()
 {
  return A + B;
 }

但在Java中,没有全局变量。因为Java是一种面向对象的编程语言,所以一切都是类的一部分。 Java 这样做的原因是为了防止数据和类成员被程序的其他部分有意或无意地修改。因此,在Java中,静态变量用于全局访问目的。

静态变量

静态变量也称为静态变量。静态变量的定义比较简单。静态变量是属于该类的变量,由static关键字修饰。 static修饰的变量是静态变量,只能定义在类内部、方法外部。

静态变量的特点

public class Fruits {
    public String fruitName;
    private int fruitNum;
    static String fruitType;
    public static void main(String[] args) {
        Fruits.fruitType = "apple"; // 类名.变量名
        System.out.println(fruitType);
    }
}

类变量

类变量也称为类变量。在Java中,类变量是静态变量。它们是用 static 关键字修改的。因此,如果你再听到静态变量,它们也是类变量。

局部变量

还有一种说法是Java中只有类变量、实例变量和局部变量。这样划分没有问题。有人可能会问,成员变量和常量放在哪里呢?别担心,我们稍后再讨论

我们先来说一下什么是局部变量

局部变量也称为局部变量。它指的是方法、构造函数或块代码中定义的变量。当方法、构造函数和代码块执行完成时,局部变量的生命周期就被销毁。

上面的一些变量概念无论如何变换,局部变量站如松、坐如钟、行如风、卧如弓,都能从容应对各种不同文章的比较。多么无忧无虑的变量啊。

所以我们需要仔细研究这么好的东西的特性。

成员变量

什么? Java中的成员变量就是实例变量吗?这个结论正确吗?

持续的

验证流程

为了验证这个结论,我们转向了stackoverflow网站

我们对 java 成员变量和实例变量的搜索帮助我们找到了这个标题。

粗略地说,什么是成员变量?成员变量和实例变量一样吗?我们在下面有答案

第一句给出了实例变量和类变量称为成员变量,然后给出了JDK官网手册中变量的定义。这意味着在Java中,只有三种类型的变量

嗯。 。 。也许这不是解决我们问题的好方法。我带着问题再次询问了JDK官网手册,看到了Variables的定义。

这意味着在Java中,只有以下几种类型的变量(不说别的,你比官网还靠谱吗?)

非静态属性也称为实例变量,因为它们的值是相对于每个实例的。换句话说,实例变量的值对于每个对象都是唯一的;

public static void main(String[] args) {}

其中args是String数组的变量。我们也称它们为参数,因此参数不使用关键字声明。将它们标记为参数仅取决于它们的声明位置。

哔哩哔哩

所以

我写了一篇文章给大家解释清楚。现在你应该知道Java中的变量是什么了。

如果使用static来定义变量,那么它只能是类变量,或者是静态变量,并且它的定义位置只能在类内、方法或代码块之外,并且该变量只有一份副本。

如果不使用static来声明变量,那么变量的名称将会有以下三种:

这就是下面代码中描述的内容

public class VariablesInJava {
 int instanceVariable; // 实例变量
 static String staticVariable; // 类变量
 public void method() {
    
  String localVariable = "localVariable"; // 局部变量
  System.out.println(localVariable);
 }
 public static void main(String args[]) {} //参数
}

好吧,伙计们,我喝太多了,被踢出了群聊。

你可能想看:
« 上一篇
下一篇 »

相关推荐

java中什么是冒泡,冒泡算法

2026年09月06日

27阅读

java中冒号,java双冒号

2026年09月06日

24阅读

java中的->,java中的是什么意思

2026年09月06日

24阅读

java中的super用法,Java中super的说明

2026年09月06日

27阅读

java中反射的应用,java中反射的应用场景

2026年09月06日

23阅读

java中开关的定义,Java关键字有哪些

2026年09月06日

25阅读