成员变量与局部变量的区别
2017-04-07 16:18
225 查看
在类和方法中都可定义属于自己的变量,类中定义的变量是成员变量,而方法中定义的变量是局部变量。
它们之间区别:
•从语法形式上看,成员变量是属于类的,而局部变量是在方法中定义的变量或是方法的参数;成员变量可以被public、private、static等修饰符所修饰,而局部变量则不能被访问控制修饰符及static所修饰;成员变量和局部变量都可以被final所修饰。
•
•从变量在内存中的存储方式上看,成员变量是对象的一部分,而对象是存在与堆内存的,而局部变量是存在于栈内存的。
•
•从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对象的创建而存在。而局部变量随着方法的调用而产生,随着方法调用的结束而自动消失。
•
•成员变量如果没有被赋初值,则会自动以类型的默认值赋值(有一种情况例外,被final修饰但没有被static修饰的成员变量必须显式赋值);而局部变量则不会自动赋值,必须显式的赋值后才能使用。
它们之间区别:
•从语法形式上看,成员变量是属于类的,而局部变量是在方法中定义的变量或是方法的参数;成员变量可以被public、private、static等修饰符所修饰,而局部变量则不能被访问控制修饰符及static所修饰;成员变量和局部变量都可以被final所修饰。
•
•从变量在内存中的存储方式上看,成员变量是对象的一部分,而对象是存在与堆内存的,而局部变量是存在于栈内存的。
•
•从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对象的创建而存在。而局部变量随着方法的调用而产生,随着方法调用的结束而自动消失。
•
•成员变量如果没有被赋初值,则会自动以类型的默认值赋值(有一种情况例外,被final修饰但没有被static修饰的成员变量必须显式赋值);而局部变量则不会自动赋值,必须显式的赋值后才能使用。
相关文章推荐
- java中的成员变量和局部变量的区别
- 成员变量和局部变量的区别
- 类的定义以及成员变量与局部变量的区别
- 成员变量与局部变量的区别
- Java中成员变量和局部变量的区别
- 全局变量,局部变量,成员变量,JQuery淡入,淡出的区别
- Java中局部变量和成员变量的几点区别
- Java基础——成员变量、局部变量和静态变量的区别
- 成员变量、局部变量、静态变量的区别及
- 成员变量和局部变量的区别
- java源文件中的“成员变量和局部变量的区别”
- java中成员变量与局部变量的区别
- 【Java】面向对象-成员变量和局部变量的区别(掌握)
- 新手学到的 关于成员变量和局部变量的区别
- 成员变量和局部变量的区别?
- JAVA中成员变量与局部变量的区别
- java 中 成员变量和 局部变量的区别
- 7 面向对象(成员变量和局部变量的区别,类作为形式参数的问题,匿名对象,封装,private关键字,this关键字,构造方法,类的初始化过程,static关键字)
- JAVA成员变量和局部变量的区别
- 成员变量、类变量和局部变量的区别