成员变量和局部变量
public class Student {
String name;
int age;
public void study() {
int i = 10;
System.out.println("好好学习");
}
public void doHomework() {
int j = 20;
System.out.println("多做练习");
}
}
成员变量:类中方法外的变量
- 例如: 代码中的
name,age
局部变量:方法中的变量
- 例如: 方法
study()
中的i
和方法doHomework()
中的j
成员变量和局部变量的区别
区别 | 成员变量 | 局部变量 |
---|---|---|
类中位置不同 | 类中,方法外 | 方法内或者方法声明上(形参) |
初始化值不同 | 有默认的初始化值 | 没有默认的初始化值,必须先定义,赋值,才能使用 |
内存中位置不同 | 堆内存 | 栈内存 |
生命周期不同 | 随着对象的存在而存在,随着对象的消失而消失 | 随着方法的调用而存在,随着方法的调用完毕而消失 |
作用域 | 整个类中有效 | 当前方法中有效 |