当前位置: 移动技术网 > IT编程>开发语言>Java > Java基础(成员变量VS局部变量)

Java基础(成员变量VS局部变量)

2020年07月16日  | 移动技术网IT编程  | 我要评论

成员变量 VS 局部变量:在同一个范围内不能声明相同的变量名.
1:声明的地方不同:
成员变量:直接声明在类中,方法外面的变量叫成员变量.
局部变量:声明在方法里面的变量叫局部变量.
2:在内存中位置不同:
成员变量:存放在内存的堆中.
局部变量:存放在内存的栈中.
3:作用范围不同:
成员变量作用范围由访问修饰符决定.
局部变量只在声明他的大括号中使用.
4:生成周期不同:
成员变量的生命周期随着对象的创建而产生,随着对象的销毁而结束.
局部变量的生命周期随着局部变量的声明语句执行而产生,随着局部变量声明的大括号 执行完而结束.
5:访问修饰符不同:
成员变量一定有访问修饰符.
局部变量不能用访问修饰符.
6:默认值不同:
成员变量不赋初值,系统会给它分配默认初值,可以直接使用.
局部变量不赋初值,没有初值,不能使用.
7:优先级不同:
当同一个类中,成员变量和局部变量同名,局部变量优先级更高.

public class Student {
 /**
  * 成员变量
  */
 public String sname="aa";
/**
  * 成员变量
  */
 public int[] nums=new int[2];
/**
  * 成员变量
  */
 public Teacher t1;
public void show1() {
  //局部变量
  String school;
  String sname="bb";
  //当同一个类中,成员变量和局部变量同名,局部变量优先级更高
System.out.println(sname);//输出局部变量的值
  System.out.println(this.sname);//输出成员变量的值
 }
}

本文地址:https://blog.csdn.net/weixin_46024823/article/details/107363771

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网