局部变量与成员变量的区别

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();
	}	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值