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

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

1、范围:

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

局部变量定义在局部范围内,如:函数内,语句内等。

2、存储:

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

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

3、默认值:

成员变量有默认初始化值; 局部变量没有默认初始化值 。

二:成员变量和静态变量的区别:

1、成员变量存在于堆内存中。

静态变量存在于方法区中。

2、成员变量所属于对象。所以也称为实例变量。

静态变量所属于类。所以也称为类变量。

3、成员变量随着对象创建而存在。随着对象被回收而消失。

静态变量随着类的加载而存在。随着类的消失而消失。

4、成员变量只能被对象所调用 。

静态变量可以被对象调用,也可以被类名调用。

注意:

1、 如果局部变量的名字和成员变量的名字相同, 要想在该方法中

2、 静态方法只能访问静态成员,不可以访问非静态成员。

因为静态方法加载时,优先于对象存在,所以没有办法访问对象中的成员。

3、静态方法中不能使用this,super关键字。

因为this代表对象,而静态在时,有可能没有对象,所以this无法使用。

时间: 2024-08-08 01:12:41

成员变量、类变量、局部变量的区别的相关文章

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

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

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

一.数组 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.类与对象

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

java面向对象过程中,最基本的两类变量就是成员变量和局部变量 成员变量是写在类中并且写在方法外部,一般写在每个类的头部,用于初始化或者方法操作,作用域是整个类被实例化到被销毁,中间变量都可以被外部方法(权限为public时)或者内部方法所共享使用,并且可以保持变量的值,就是多个方法可以复用该变量,成员变量一般要加权限修饰符,并且定义成员变量的时候系统会给初始值0 而局部变量作用域只在方法内部,当方法调用完毕,该变量也自动消失,并且只有方法本身可以使用,其他方法或类都不能使用该变量,也就是方法本

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

成员变量: 在类体里面定义的变量叫做成员变量: 如果在变量有static关键字修饰,就叫作静态变量或类变量: 如果该变量没有static关键字修饰,就叫作非静态变量或实例变量: 局部变量: 方法内定义的变量.形参.代码块中定义的变量都叫做局部变量: 另外,成员变量可以不显式初始化,它们可以由系统设定默认值:局部变量没有默认值,所以必须设定初始赋值. 还有,在内存中的位置也不一样.成员变量在所在类被实例化后,存在堆内存中:局部变量在所在方法调用时,存在栈内存空间中. 原文地址:https://ww

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

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

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

在类中的位置不同 成员变量  在类中方法外 局部变量 在方法定义中或者方法声明上 在内存中的位置不同 成员变量 在堆内存中 局部变量  在栈内存中 生命周期不同 成员变量 随着对象的产生而存在,对象的消失而消失 局部变量      随着方法的调用而存在,随着方法的消失而消失 初始化值不同 成员变量 有默认初始化值 局部变量  没有默认初始化值,必须定义赋值然后使用 局部变量名称可以和成员变量名称一样 在方法上使用采用就近原则 基本数据变量变量: 引用数据类型变量  数组 类 接口 枚举

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

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