成员变量(Member Variable)和局部变量(Local Variable)是面向对象编程中两种作用域和生命周期不同的变量,主要区别体现在以下几个方面:
1. 声明位置
-
成员变量:
声明在类内部、方法/构造器/代码块外部。
例如:public class Person {// 成员变量(实例变量)private String name; // 成员变量(静态变量)private static int count; }
-
局部变量:
声明在方法、构造器或代码块内部。public void sayHello() {// 局部变量(在方法内部)String greeting = "Hello!"; System.out.println(greeting); }
2. 作用域
- 成员变量:
整个类内部均可访问(具体范围受访问修饰符private/protected/public
影响)。 - 局部变量:
仅在声明它的 方法/构造器/代码块内部 有效