根据定义变量位置的不同,可以将变量分为成员变量和局部变量
成员变量是在 类范围内 定义的变量
局部变量是在一个 方法内 定义的变量
成员变量(存在于堆内存中,和类一起创建)
局部变量(存在于栈内存中,当方法执行完成,让出内存,让其他方法来使用内存)。
1. 成员变量
成员变量可以分为:
实例属性 (实例变量)(不用static修饰)
随着实例属性的存在而存在
类属性 (类变量、静态变量)( (static修饰)
随着类的存在而存在
常量(final修饰)
成员变量无需显式初始化,系统会自动对其进行默认初始化
2. 局部变量
局部变量可分为:
形参(形式参数)
在整个方法内有效
方法局部变量 (方法内定义)
从定义这个变量开始到方法结束这一段时间内有效
代码块局部变量 (代码块内定义)
从定义这个变量开始到代码块结束这一段时间内有效
局部变量除了形参外,都必须显示初始化,也就是要指定一个初始值,否则不能访问。