变量是对一个内存位置的命名。它是程序中的基本存储单位。

  • 在程序执行过程中,存储在变量中的值可以被改变。
  • 变量只是给内存位置的一个名称。所有的操作都是在内存位置的变量效应上完成的。
  • 在Java中,所有的变量都必须在使用前声明。

实例变量: 这些变量在类内声明,但在方法、构造函数或块之外,并且总是得到一个默认值。

  • 这些变量通常在我们创建一个对象时创建,并在对象被销毁时销毁。
  • 我们可以使用一个访问指定符,例如,变量,如果没有指定访问指定符,那么就使用默认的访问指定符。
  • 每一个对象都会有自己的实例变量副本。
    例子:
    class Taxes  
    {  
     int count; // Count is an Instance variable  
     // others 
    }
    

局部变量: 这些变量是在一个方法中声明的,但没有得到任何默认值。

  • 它们通常在我们进入一个方法或构造函数时被创建,并在退出程序块或从方法中返回时被销毁。
  • 它的作用域一般仅限于一个方法,其作用域从它们被声明的那一行开始。它们的范围通常保持在那里,直到方法的收尾大括号出现。
  • 局部变量的初始化是强制性的。

例子:

int area()      
{    
        int length = 10; // Local variable          
        int breadth = 5; // Local variable          
        int rectarea = length*breadth; // Local variable          
        return rectarea;          
}

实例变量与局部变量之间的表格对比:

实例变量 局部变量
实例变量被定义在类中,但在方法的主体之外。 局部变量被定义为在编程块或子程序中声明的一种变量类型。
实例变量在对象被实例化时被创建,并且可以被类中的所有构造器、方法或块所访问。 局部变量在程序块、方法或构造器启动时被创建,一旦退出程序块、方法或构造器,该变量将被销毁。
实例变量在对象被销毁时被销毁。 局部变量在构造函数或方法退出时被销毁。
实例变量可以在整个类中被访问。 局部变量的访问仅限于它所声明的方法。
实例变量用于为类所需的数据保留内存,而且是在对象的生命周期内。 局部变量被用来减少组件之间的依赖性,即减少代码的复杂性。
如果实例变量没有被代码分配,就会被赋予一个默认值。 局部变量并不总是有一些值,所以必须有一个由代码分配的值。
在使用前初始化实例变量并不是强制性的。 在使用前初始化局部变量是很重要的。
实例变量包括访问修饰符,如:privatepublicprotected等。 局部变量不包括任何访问修饰语,如:privatepublicprotected等。

实例变量和局部变量的区别

欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:实例变量和局部变量的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-instance-variable-and-local-variable.html
免责声明:以上内容仅代表 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。