java的作用域

文章目录

作用域

  1. 在java中,主要变量就是成员变量和局部变量
  2. 一般局部变量指的是成员方法中定义的变量
  3. 作用域的分为全局变量局部变量,全局变量的作用域在整个类体 ;除了属性之外的都是局部变量,作用域只能用于某块
  4. 全局变量可以不赋值,直接使用,有默认值,但局部变量没有默认值所以必须赋值, 才能使用

 public  class text{
	public static void main(String[] args) {
	}
}
class Cat{
	
int age=10;//全局变量,作用整个类体

	public void cry() {
		
		//n 和 name 都是局部变量
		//n 和 name的作用域都在cry方法中
		int n =10;
		String name= "jack";	
	}		
	public void  eat() {
	System.out.println("猫的年龄"+age); //此时可以用,age是类中的全局变量
	System.out.println("猫的名字"+name); //不可以访问到,因为name是其他方法的局部变量	
	}	
}

细节

  1. 属性和局部变量可以重名,访问时遵循就近访问
  2. 在同一个作用域中,比如在同一个方法中,定义的局部变量不能重名,比如说类中的变量和方法中的变量可以重名,同类中不同的方法也可以重名
  3. 属性生命周期长,伴随对象的创建而创建,伴随对象死亡而死亡,局部变量生命周期短,伴随它的代码块的执行而创建,伴随它的代码块的结束而死亡,比如方法调用时及结束
public  class text{
	public static void main(String[] args) {	
	}
}
class Cat{
	
	int age=10;
	String name;

	public void cry() {	
		String name= "jack";	
	}		
	public void  eat() {
		String name  = "liLing" 
		//name=liLing,对于cry和eat不同的作用域方法中,可以重名, 对于类和方法相同的变量,采取就近原则
	System.out.println("猫的年龄"+age); //age=10
	
	}	
}

注意

  1. 全局变量/属性可以被本类使用,或者其他类使用(通过对象调用)
  2. 局部变量只能在本类中对应的方法使用
  3. 全局变量/属性可以加修饰符,局部变量不可以加修饰符
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值