Java基础-成员变量和局部变量的区别

  • Post author:
  • Post category:java




Java




中变量的分类分为:成员变量和局部变量。如图:



  • 成员变量


成员变量是类里定义的变量,但在方法、构造方法和语句块之外。


其包括实例变量和类变量:



  1. 实例变量:



    作用域与对应实例的生存范围相同,访问修饰符可以修饰实例变量。


  2. 类变量:



    作用域与这个类的生存范围相同,静态变量可以通过:ClassName.VariableName的方式访问。



代码示例:



  • 局部变量


局部变量是方法、构造方法或语句块里定义的变量。


其包括形参、方法局部变量、代码块局部变量:



  1. 形参:



    定义方法签名时定义的局部变量,作用域在整个方法内有效。


  2. 方法局部变量:



    方法体内定义的局部变量,作用域是从定义该变量的地方生效,到该方法结束时失效。


  3. 代码块局部变量:



    代码块中定义的局部变量,作用域从定义该变量的地方生效,到该代码块结束时失效。



示例代码:



  • 成员变量与局部变量的区别



成员变量:


  1. 成员变量定义在类中,在整个类中都可以被访问。

  2. 成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。

  3. 成员变量有默认初始化值,如:数值型变量的默认值是


    0


    ,布尔型变量的默认值是


    false


    ,引用类型变量的默认值是


    null





局部变量:


  1. 局部变量只定义在局部范围内,如:函数内,语句内等,只在所属的区域有效。

  2. 局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放。

  3. 局部变量没有默认初始化值。



版权声明:本文为weixin_44587257原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。