局部变量和成员变量的区别
局部变量和成员变量的区别
区别1:代码中位置不同
成员变量:类中方法外定义的变量
局部变量:方法中定义的变量 代码块中定义的变量
区别2:代码的作用范围
成员变量:当前类的很多方法
局部变量:当前一个方法(当前代码块)
区别3:是否有默认值
成员变量:有
局部变量:没有

引用类型:默认初始值是NULL
区别4:是否要初始化值
成员变量:不需要,也不建议初始化,后续使用的时候赋值即可
局部变量:一定需要,不然直接使用的时候报错
区别5:内存中的位置不同
成员变量:堆内存
局部变量:栈内存
区别6:作用时间不同
成员变量:当前对象从创建到销毁
局部变量:当前方法从开始执行到执行完毕
package com.msb; /** * @Auther:liu * @Date:-10:54 * @Description:IntelliJ IDEA * @Version:1.0 */ public class Student { int c;//成员变量:在类中方法外 char e; double f; byte g; boolean bo; long h; float j; short i; String name; public void study(){ int num=10;//局部变量:在方法中 System.out.println(num); { int a;//局部变量:在代码块中 } if (1 == 3) { int b; } } public void eat(){ } //这是一个main方法:是程序的入口 public static void main(String[] args) { Student s=new Student(); System.out.println(s.c+"/"+s.e+"/"+s.f+"/"+s.g+"/"+s.bo+"/"+s.j+"/"+s.h+"/"+s.i+"/"+s.name); } }
浙公网安备 33010602011771号