当前位置:首页 » 编程语言 » java类成员变量

java类成员变量

发布时间: 2024-11-09 19:45:11

java什么是成员变量和局部变量

本文介绍成员变量和局部变量的区别

1、成员变量是独立于方法外的变量,局部变量是类的方法中的变量
1)、成员变量:包括实例变量和类变量,用static修饰的是类变量,不用static修饰的是实例变量,所有类的成员变量可以通过this来引用。
2)、局部变量:包括形参,方法局部变量,代码块局部变量,存在于方法的参数列表和方法定义中以及代码块中。
2、成员变量可以被public,protect,private,static等修饰符修饰,而局部变量不能被控制修饰符及 static修饰;两者都可以定义成final型。
3、成员变量存储在堆,局部变量存储在栈。局部变量的作用域仅限于定义它的方法,在该方法的外部无法访问它。成员变量的作用域在整个类内部都是可见的,所有成员方法都可以使用它。如果访问权限允许,还可以在类的外部使用成员变量。
4、局部变量的生存周期与方法的执行期相同。当方法执行到定义局部变量的语句时,局部变量被创建;执行到它所在的作用域的最后一条语句时,局部变量被销毁。类的成员变量,如果是实例成员变量,它和对象的生存期相同。而静态成员变量的生存期是整个程序运行期。
5、成员变量在累加载或实例被创建时,系统自动分配内存空间,并在分配空间后自动为成员变量指定初始化值,初始化值为默认值,基本类型的默认值为0,复合类型的默认值为null。(被final修饰且没有static的必须显式赋值),局部变量在定义后必须经过显式初始化后才能使用,系统不会为局部变量执行初始化。
6、局部变量可以和成员变量 同名,且在使用时,局部变量具有更高的优先级,直接使用同名访问,访问的是局部变量,如需要访问成员变量可以用this.变量名访问

㈡ java中的成员变量、类变量,成员方法、类方法各是什么,怎么区分,

成员变量:包括实例变量和类变量,用static修饰的是类变量,不用static修饰的是实例变量,所有类的成员变量可以通过this来引用。

类变量:静态域,静态字段,或叫静态变量,它属于该类所有实例共有的属性。而且所有的实例都可以修改这个类变量的值(这个类变量没有被final修饰的情况),而且访问类变量的时候不用实例,直接用类名.的方式就可以。

成员方法:包括实例方法和类方法,用static的方法就是类方法,不用static修饰的就是实例方法。实例方法必须在创建实例之后才可以调用。

类方法:和类变量一样,可以不用实例,直接用类就可以调用类方法。

举例:

classDemo{
intx;//x是实例变量,也是成员变量
staticinty;//y为类变量,也是成员变量
publicintx(){//该方法为实例方法,是成员方法
returnx;
}
publicstaticvoidsetX(intx1){//该方法为类方法,也是成员方法
x=x1;
}
}

㈢ 什么是java的局部变量、成员变量和全局变量

1、局部变量:在方法内定义的变量称为“局部变量”或“临时变量”,方法结束后局部变量占用的内存将被释放。

2、成员变量:在类体的变量部分中定义的变量,也称为字简喊段。

3、全局变量:全局变量,又称“外部变量”,它不是属于哪个方法,作用域从定义的地址开始到源文件结束。

㈣ JAVA 类变量和成员变量怎么理解

成员变量就是类中的属性。当new对象的时候,每个对象都有一份属性。一个对象中的属性就是成员变量。在类内部,任何地方都可以访问成员变量。类变量是被static修饰的属性。作用范围在类变量定义之后。

class Person{

//成员变量,实例变量

String name;

//静态变量,类变量,所有对象共享的属性用static修饰

static String country = "CN";

public void show(){

System. out.println(country + ":" + name); }}

class StaticDemo{

public static void main(String[]args){

Personp = new Person();

System. out.println(p.country); //可以用类名直接调用

System. out.println(Person.country); }}

(4)java类成员变量扩展阅读:

成员变量和类变量的区别:

1、两个变量的生命周期不同

成员变量随着对象的创建而存在,随着对象的回收而释放。

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

2、调用方式不同

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

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

3、数据存储位置不同

成员变量存储在堆内存的对象中,所以也叫对象的特有数据。

静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。



热点内容
mega神奇宝贝服务器ip 发布:2024-11-13 06:37:08 浏览:394
python主要用来做什么 发布:2024-11-13 06:36:59 浏览:163
extjs文件上传java 发布:2024-11-13 06:22:49 浏览:692
电脑数据怎么备份到服务器 发布:2024-11-13 06:19:31 浏览:404
c语言函头文件 发布:2024-11-13 06:14:40 浏览:37
编译java程序的命令是什么 发布:2024-11-13 06:09:32 浏览:857
编译dll依赖另一个dll 发布:2024-11-13 06:09:25 浏览:124
祝编程老师 发布:2024-11-13 06:07:26 浏览:506
五格殿下编程 发布:2024-11-13 05:54:11 浏览:214
学生密码笔盒原始密码多少 发布:2024-11-13 05:30:06 浏览:770