JAVA虚拟机学习总结

阅读更多
       通过一个星期对<>的学习,总体感觉自身有一定的提高(可能对于别人来说仅一点而已),特别是对类的成员(类函数,类变量,实例函数以及实例变量)的生成时机和作
用域,下面是我都其中比较重要的东东的总结.
      首先介绍一下JAVA虚拟机的执行顺序:Class Load-->Instance-->assign.
      JAVA虚拟机启动的时候就对Class进行加载,并对类函数和类变量进行初始话,由程序第一次使用之后对其保存到内存的静态区域,以后再次访问时即从静态区域中取即可.实例变量又有全局和局部之分,全局变量是在类被实例化之后对其进行初始化,而局部变量则是实例方法被调用的时候才初始化.局部变量必须赋初始值.
      类函数,类变量即是用static修饰的对象,而实例函数和实例变量则是非static修饰的对象,
      到目前为止,应该对为什么使用static ,staic final ,final的缘由了解了吧!我还是累赘一点,static和static final修饰变量和函数的时候,那就意味着这个成员将属于类本身的,不同的是用static final修饰的将是不能更改永远保存在静态内存中的成员(一般系统的constant都是这样定义的),而static只是意味着始终应用一个对象.被final修饰的类是不可继承的类,修饰变量将是不可改变的,即为常量.
      上述是我对JAVA虚拟机了解最深的东西.比如他的那些机器码看得真的是脑袋发麻.
       

你可能感兴趣的:(虚拟机,Java)