对于基本类型数据来说:
一、局部变量
1、范围:定义在一个方法内部的变量;2、作用域:其作用域为所在代码块,也称为临时变量、栈变量;
3、生命周期:从创建开始到方法(函数)结束为止;
4、特点:a、在使用之前必须要对其初始化;
b、一律存放在栈中。
1、范围:定义在一个类内部但不在方法中的变量;
2、作用域:其作用域为整个类,能够被操作的范围是类的内部;
3、生命周期:对象被创建的时候开始,对象被垃圾回收的时间结束;
4、特点:a、如未定义其初值,系统会自动对实例变量进行默认初始化(默认值为null),使用之前必须创建类的实例;
b、每一个对象的实例变量的值是相互独立的;
c、一律存放在堆中。
对于复杂类型来说:
引用存放在栈中,而其所指向的值存放在堆中。