实例变量与static变量的区别

本文详细解析了Java中的实例变量与static变量的区别,包括它们的定义、使用方式及如何影响对象的状态。通过具体代码示例展示了两种变量类型在实际应用中的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

成员变量又分为两种,一为实例变量,以为static变量(也称为类变量、静态变量)

static变量

static变量即类变量、静态变量,在变量前面有static关键字修饰。对一个类,每当创建一个static变量时,系统就会为该static变量分配一次内存,以后不管创建了多少个对象,所有对象调用该static变量时,static变量的值是共享的。

可以通过类名或者对象来调用static变量。

实例变量

在变量前面有static关键字修饰。对象的实例化,就是指这个,可以通过对象来访问实例变量,和static变量的区别就是,实例变量不可一通过类名来访问成员变量。


/*实例变量与static变量的区别:
 * 实例变量通过对象改变变量的值,并不会影响到其他对象的实例化变量的值。
 * static变量可以
 */
public class ConcentCircle {
	public static int x=100,y=100;  //定义圆心的坐标,static变量
	public int r;    //定义半径变量,实例变量
	public static void main(String[] args){
		ConcentCircle t1=new ConcentCircle();  //创建对象
		ConcentCircle t2=new ConcentCircle();
		t1.x+=100;
		t1.r=50;
		t2.x=200;   //static变量x的值,取决于该语句
		t2.r=150;
		System.out.println("Circle1:x="+t1.x+",y="+t1.y+",r="+t1.r);
		System.out.println("Circle2:x="+t2.x+",y="+t2.y+",r="+t2.r);

	}

}

输出结果为:

Circle1:x=200,y=100,r=50
Circle2:x=200,y=100,r=150

微笑微笑吐舌头

微笑吐舌头

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值