Java 笔记 —— 变量

目录

1.1 前言

1.2 局部变量

1.3 实例变量

1.4 静态变量

1.5 总结


1.1 前言

对于小白来说,刚刚接触面向对象,对于局部变量,实例变量和静态变量或许都会有种似懂非懂的感觉。

1.2 局部变量

在方法主体内部声明的变量称为局部变量。您只能在该方法中使用该变量,并且类中的其他方法甚至都不知道该变量存在。

顺便说一下,方法可以理解为类中的函数。

1.3 实例变量

在类内部但在方法主体外部声明的变量称为实例变量。它没有声明为 static 。之所以称为实例变量,是因为其值是特定于实例的,并且不会在实例之间共享。

1.4 静态变量

有 static 声明的变量就是静态变量。它不能再方法中声明,只能在该类的所有实例之间共享。当类加载到内存中时,静态变量的内存分配仅发生一次。

是不是到这看不太懂,来看看实例代码;

class Counter{
    int count=0;// 区别在这里,没有static

    Counter(){
        count++;
        System.out.println(count);
    }

    public static void main(String args[]){

        Counter c1=new Counter();
        Counter c2=new Counter();
        Counter c3=new Counter();

     }
}
运行结果:
1
1
1
class Counter2{
    static int count=0;  // 区别在这里,一个static可以让结果大不相同

    Counter2(){
        count++;
        System.out.println(count);
    }

    public static void main(String args[]){

        Counter2 c1=new Counter2();
        Counter2 c2=new Counter2();
        Counter2 c3=new Counter2();

     }
}
运行结果:
1
2
3

对比两种运行结果,第一个实例没有声明静态变量(没有 static ),每次调用方法,都会在内存中重新分配内存,也就是重新生成一个 count ,并赋值(初始化)为 0(count = 0),所以第一段实例在内存中一共生成三个 count 。第二个实例声明静态变量(有 static ),静态变量只分配一次内存,所以三次方法调用都是调用同一个 count 。

1.5 总结

class A{  
    int data = 50;  // 实例变量 
    static int m = 100; // 静态变量 
    void method(){  
        int n = 90; // 局部变量  
    }  
} 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值