public class Test2{//类的定义,要见名知意
String niKeName = "花花";//定义在类中,方法外,称为成员变量
int age = 18;
String birthPlace = "广州";
public void eat(){
String nikeName = "白白";//局部变量
String birthPlace = "BeiJing";//定义在方法中,称为局部变量
System.out.println("niKeName="+niKeName);
System.out.println("birthPlace="+birthPlace);
System.out.println("this.birthPlace="+this.birthPlace);
}
/**
【1】在eat和sleep方法中,都是String类型的name,说明不同的方法,可以有同名的局部变量
【2】当成员变量和局部变量名称相同时,局部变量更有优先级
【3】如果想使用成员变量,那么就使用this.属性名
【4】成员变量有默认的初始值,应用数据类型的默认值为null,int——>0,double——>0.0,boolean——>false
【5】局部变量必须声明,赋值,再使用,否则编译报错,尚未初始化
【6】成员变量的作用域为整个类,局部变量只是在所定义的方法中或者语句块中起作用
【7】成员变量存储在堆内存中,局部变量存储在栈内存中
*/
public void sleep(){
String nikeName = "大大";
String birthPlace = "深圳";//定义在方法中,称为局部变量
System.out.println("this.niKeName="+this.niKeName);
System.out.println("niKeName="+niKeName);
System.out.println("birthPlace="+birthPlace);
System.out.println("this.birthPlace="+this.birthPlace);
}
public static void main(String args[] ){
Test2 t = new Test2();//创建对象
t.eat();//对象名.方法名
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
t.sleep();
}
}
局部变量与成员变量的区别
最新推荐文章于 2024-10-22 09:00:53 发布