今天在复习JAVA时候看到了一个很有意思的题目,所以在这里跟大家分享一下
我们很多人对静态变量以及实例变量很熟悉但是如果要说他们的区别可能很多人就一头雾水了,刚刚自己在看的时候也是一样突然就卡住了,所以就当加深自己的印象,写人生中的第一篇博客(我就不信这还不印象深刻- -)万一将来面试真的考这个蒙圈了就无语。。。
好了话不多说直奔主题
首先我们要弄懂JAVA中变量的类型,JAVA提供了三种变量分别是静态变量(也叫类变量)、实例变量、局部变量,其中我们今天主要讲讲静态变量以及实例变量。
下面代码给大家进行一个初步的描述
public class Variable{
static int allClicks=0; // 类变量
String str="hello world"; // 实例变量
public void method(){
int i =0; // 局部变量
}
}
- 首先在语法定义上区别:静态变量前面要加static,实例变量不用
- 实例变量需要创建实例方可引用而静态变量不需要
这是我在自己的Eclipse上运行的代码
当我直接调用Test2中的静态变量时,不需要创建实例便可以直接调用,但是调用实例变量时会报错。
最后如果我们让静态变量和实例变量同时++在获取它们的值时,会发现静态变量的值随之改变而实例变量不会
好了这是我自己对于实例变量和静态变量的看法,更详细的说明在官网有兴趣的可以去研究研究,第一次写这个有写的不好的地方欢迎大家提出,希望能给大家带来帮助
掰掰