Java:变量的赋值操作(祭奠我那悲催的基础知识)

        今天编写系统程序,本来是一个参数传递问题(后面会有专门的帖子说这个问题),可是写着写着思绪就有点飘渺,偏偏就是这个时候出现了一个让我意想不到的语句问题,一个让我感到非常莫名其妙的问题,也是让我感觉很惭愧的问题,恍恍惚惚到网上查找答案,还真找到了这个类似的问题,看到下面的回复,心里一阵凉,很多人都不屑,感觉这种问题很好笑,应该是没有入门或者刚入门的菜鸟才会问的问题。自己学习编程也很长时间了,C、C++、C#、java一路走来,也做过几个项目,但是却被这样的问题卡主了,并且百思不得其解,顿时内心有种羞辱的感觉。可静下心来回头想想,这可能仅仅一个映射点,自己本来就是个菜鸟,一个刚刚学了些皮毛的东西就觉得自己很牛逼的屌丝菜鸟,这才是自己应该感到真正羞辱的原因,路漫漫其修远兮,自己还是需要静下心来好好把眼前小事做好,欲速则不达,切记!

         说了这么多牢骚话,还是把问题列出来说一下吧,一来可以为自己以后查阅提供方便,二来为其他人做个参考,下面通过编写一个简单的Class加以说明:

public class Test()
{       
         int i=1;
         i=2;
}

       上例中定义一个Test类,在类中定义了一个int类型的变量i,定义以后就对它进行赋值,这个时候系统就报错,编译不通过,但是回想自己以前编程的时候用到过类似这种方法,为什么不行呢,然后又编写了一个方法,在方法中用这样的句子,方向没有报错,顿时想起来以前这样用的时候是在C语言里,Java这样不行应该是语法问题吧,查阅资料得出了答案:

        1、Java中类里面只包含变量和方法;

        2、Java中除定义和声明外的其他语句都需要放在方法内部,方法必须放到类中,上例中int i=1;是一个定义和声明变量语句,而下面的i=2是一个赋值语句,需要放在方法中进行;

        3、Java中不存在全局变量,只有成员变量和局部变量,static类似于C中的全局变量,成员变量在定义的时候会有系统默认值,局部变量必须在定义的时候赋值;

        4、程序有数据和指令组成,在预处理的时候需要分清哪一个是数据,哪一个是指令,Java认为数据源自变量,执行指令源自方法,变量最后加载到寄存器,执行指令由算数逻辑单元执行;

        上面写的可能太笼统,需要到java虚拟机中进一步找答案,不过算一个开始吧,自己需要好好加油了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章