静态变量和成员变量的区别 && 成员变量和局部变量的区别

=============================================================================

1)静态变量和成员变量的区别:
  (1):所属不同:
    静态变量:属于类,也称为类变量。
    成员变量:属于对象,也称为对象变量或实例变量。
  (2):在内存中的位置不同:
    静态变量:存储于方法区的静态区。
    成员变量:存储于堆内存。
  (3):生命周期不同:
    静态变量:静态变量是随着类的加载而加载,随着类的消失而消失。
    成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失。
  (4):调用不同:
    静态变量:可以通过对象名调用,也可以通过类名调用。
    成员变量:只能通过对象名调用。

=============================================================================

2)成员变量和局部变量的区别:
  (1)在类中的位置不同:
    成员变量:在类中方法外。
    局部变量:在方法定义中或者方法声明上(即形参)。
  (2)在内存中的位置不同:
    成员变量:在堆中。
    局部变量:在栈中。
  (3)生命周期不同:
    成员变量:随着对象的创建而存在,随着对象的消失而消失。
    局部变量:随着方法的调用而存在,随着方法的调用完毕而消失。
  (4)初始化值不同:
    成员变量:有默认值。
    局部变量:没有默认值,必须定义,赋值,然后才能使用。
  (5)注意事项:
    局部变量名称可以和成员变量名称一样,但是在方法中使用该变量的时候,采用的是就近原则(即先找小范围,再找大范围)。

=============================================================================

原文地址:https://www.cnblogs.com/chenmingjun/p/8446631.html

时间: 2024-10-18 08:37:52

静态变量和成员变量的区别 && 成员变量和局部变量的区别的相关文章

成员变量、类变量、局部变量的区别

一:成员变量和局部变量的区别 1.范围: 员变量定义在类中,在整个类中都可以被访问. 局部变量定义在局部范围内,如:函数内,语句内等. 2.存储: 成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中. 局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放. 3.默认值: 成员变量有默认初始化值: 局部变量没有默认初始化值 . 二:成员变量和静态变量的区别: 1.成员变量存在于堆内存中. 静态变量存在于方法区中. 2.成员变量所属于对象.所以也称为实例变量. 静态变

数组 面向对象 成员变量和局部变量额区别

一.数组 1.数组中常见的错误: 1.NullPointerExcepation : 空指针异常 原因:引用的类型变量没有指向任何的对象,在这种情况下还访问了它的属性和方法. 一个对象如果使用完了不会立马释放,只是将这个对象变为一个垃圾对象,由垃圾回收机制自己来释放.,我们没办法操作它释放. 2.ArrayIndexOutOfBoundsExcepation :数组下表越界. 二.面向对象 1.java也属于面向对象编程 : 2.面向对象的三大特征 : 封装,继承,多态.类,对象. 3.对象 :

4.5 成员变量和局部变量的区别

/* 成员变量和局部变量的区别? A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 D:初始化值不同 成员变量:有默认初始化值 局部变量:没有默认初始化值,必须定义,赋值,然后才能使用. 注意事项: 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则

成员变量和局部变量的区别(个人心得体会)

1:成员变量和局部变量的区别? 1.源代码中定义的位置不同     成员变量定义在类中.     局部变量定义在方法中(类的下一级大括号都是局部的),也可以定义局部变量. 2.内存中存储的位置不同     成员变量存储在堆内存的对象中.     局部变量存储在栈内存的方法中. 3.生命周期的不同     成员变量随着对象的调用而楚翔.     局部变量所属区间的运行而出现,随着所属区间的结束而结束.      2:     class car{       int num;       Stri

6_面向对象基础、成员变量和局部变量的区别

一.面向对象的思想 面向对象特点:(1)更符合我们思想习惯的思想:        (2)可以将复杂的事情简单化:        (3)将我们从执行者变成了指挥者,角色发生了转换. 二.类与对象及其应用 1.事物和类的对应关系   事物      类   属性  ----------成员变量   行为  ----------成员方法 2.成员变量和成员方法   成员变量:和以前定义变量一样,存储位置放生了改变,在类中方法外   成员方法:和以前定义方法一样,只不过去掉了static. 3.类与对象

成员变量和局部变量的区别

1)位置不同: 成员变量:类中方法外. 局部变量:在方法定义上或者方法定义中. 2)在内存中位置不同: 成员变量:在堆内存. 局部变量:在栈内存. 3)生命周期不同: 成员变量:随类的加载而加载,随类的对象消失而消失. 局部变量:随着方法的调用而存在,随着方法调用完毕而消失. 4)初始化值不同: 成员变量:有默认的初始化值,系统根据该成员变量的类型来给默认值. 局部变量:必须有初始化值或者是在使用这个局部变量之前而赋值,没有默认初始化值. 注意:当局部变量和成员变量名称一致,就近原则输出变量的值

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

在类中的位置不同 成员变量:在类内部方法外部 局部变量:在方法体内部定义的或者方法的参数中定义的在内存中的位置不同 成员变量:在堆内存,有初始化值,byte,short,int,long->0,char->'\u0000',float,double->0.0,引用类型->null: 局部变量:在栈内存,没有初始化的值,必须初始化后才能使用.生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失初始化值不同 成员变

面向对象_成员变量和局部变量的区别

作用范围: 局部变量作用于函数中或者语句中(定义在函数或语句中(比如for语句),必须初始化) 成员变量作用于整个类中(定义在类中,有默认初始化值,可以定义显示初始化值) 在内存中的位置: 成员变量在堆内存中.因为对象的存在,才在内存中存在. 局部变量在栈内存中. 如果成员变量没有定义显示初始化,那么系统默认会初始化(在堆内存中的变量都会有默认初始化值)byte 0short 0int 0long 0Ldouble 0.0Dfloat 0.0fboolean false引用数据类型默认初始化值都

java当中成员变量和局部变量的区别

1:成员变量定义在类中,整个类中都可以访问.2:局部变量定义在函数,语句,局部代码块中,只在所属的区域有效.3:成员变量存在于堆内存的对象中.4:局部变量存在于栈内存的方法中.5:成员变量随着对象的创建而存在,随着对象的小事而消失.6:局部变量随着所属区域的执行而存在,随着所属区域的结束而释放.7:成员变量都有默认初始化值.8:局部变量没有默认初始化值.