Java中local variable和member variable的区别,举个栗子
时间: 2023-11-24 22:06:43 浏览: 136
在Java中,local variable(局部变量)和member variable(成员变量)是两种不同的变量类型,有以下区别:
1. 作用域:local variable只在其声明的代码块内有效,而member variable则在整个类中都有效。
2. 生命周期:local variable只在其声明的代码块内存在,一旦代码块执行完毕,其内存就会被释放。而member variable则随着类对象的创建而创建,随着类对象的销毁而销毁。
3. 默认值:local variable没有默认值,必须在声明时显式地赋初值,否则编译器会报错。而member variable有默认值,具体取决于其类型。
举个例子,比如我们有以下代码:
```java
public class Example {
private int memberVariable;
public void method() {
int localVariable = 0;
System.out.println("memberVariable = " + memberVariable); // 默认值为0
System.out.println("localVariable = " + localVariable); // 初值为0
}
}
```
在这个例子中,`memberVariable`是一个成员变量,其默认值为0。`localVariable`是一个局部变量,需要在声明时赋初值,这里我们赋值为0。在`method`方法中,我们可以访问到`memberVariable`成员变量和`localVariable`局部变量。
阅读全文