1.成员变量的作用域:
类中的属性,也就是直接在类中定义的变量称做成员变量,它定义在方法的外部。
我们用代码来看:
public class Person {
String name; //定义姓名
String gender; //定义性别
int age; //定义年龄
public void eat(String name){
System.out.println(this.name+"邀请"+name+"共享晚饭");
}
public void work(){
int age=30;
System.out.println(this.name+age+"岁的工作理念:挣钱养家");
}
public void work(String contect){
System.out.println(this.name+"的工作理念:"+contect );
}
public void show(){
System.out.println("姓名是:"+this.name+", 性别是:"+this.gender+", 年龄是:"+this.age);
}
}
在上面的代码中,Person类中的name、gender、既不属于eat()方法,也不属于work()方法,而属于Person类本身的属性,他们就被称做是Person类的成员变量。
3.局部变量的作用域:
局部变量指的就是定义在方法中的变量。
上面代码中work()方法中的变量age就是局部变量。
2.成员变量和局部变量之间的区别:
首先我们使用成员变量和局部变量的时候需要注意以下几点:
1》作用域不同:
局部变量的作用域仅限于定义它的方法,在该方法外无法访问它。
成员变量的作用域却在整个类中都是可见的,所有成员方法都可以使用它。
2》初始值不同:
java不会给局部变量赋予初始值,因此局部变量必须要定义并且赋值后再使用。
成员变量,如果在类定义中没有给它赋予初始值,java会给它一个默认值。
3》在同一个方法里,不允许有同名的局部变量;在不同的方法中,可以有同名的局部变量。
4》局部变量可以和成员变量同名,且使用时,局部变量具有更高的优先级。



