什么是成员变量?它和实例变量一样吗?

3 java variables member-variables

什么是成员变量?成员变量和实例变量是一回事吗?

实例变量是在类中声明并在整个代码中访问的变量,对吗?

孙兴斌*_*孙兴斌 6

实例变量和类变量一般称为成员变量。

请参阅声明成员变量

有几种类型的变量:

  • 类中的成员变量——这些被称为字段。
  • 方法或代码块中的变量——这些被称为局部变量。
  • 方法声明中的变量——这些被称为参数。

变量

Java 编程语言定义了以下类型的变量:

  • 实例变量(非静态字段) 从技术上讲,对象将其各自的状态存储在“非静态字段”中,即未使用 static 关键字声明的字段。非静态字段也称为实例变量,因为它们的值对于类的每个实例(换句话说,对于每个对象)都是唯一的;一辆自行车的当前速度与另一辆自行车的当前速度无关。

  • 类变量(静态字段) 类变量是使用 static 修饰符声明的任何字段;这告诉编译器,无论该类已实例化多少次,都存在该变量的一个副本。定义特定类型自行车的齿轮数量的字段可以标记为静态,因为概念上相同的齿轮数量将适用于所有实例。代码 static int numGears = 6; 会创建这样一个静态字段。此外,可以添加关键字 final 来表示齿轮的数量永远不会改变。

  • 局部变量 类似于对象如何在字段中存储其状态,方法通常将其临时状态存储在局部变量中。声明局部变量的语法类似于声明一个字段(例如,int count = 0;)。没有将变量指定为局部变量的特殊关键字;该决定完全来自变量声明的位置——在方法的左大括号和右大括号之间。因此,局部变量仅对声明它们的方法可见;其他班级无法访问它们。

  • 参数 您已经在 Bicycle 类和“Hello World!”的 main 方法中看到了参数示例。应用。回想一下,main 方法的签名是 public static void main(String[] args)。在这里,args 变量是此方法的参数。要记住的重要一点是,参数总是被归类为“变量”而不是“字段”。这也适用于其他参数接受构造(例如构造函数和异常处理程序),您将在本教程后面了解这些构造。


lex*_*ore 5

JLS中没有提到“成员变量” 。

\n\n

“实例变量”在\xc2\xa7 4.12.3中定义:

\n\n
\n

实例变量是在类声明中声明的字段,不使用关键字static

\n
\n