zoukankan      html  css  js  c++  java
  • 工作的开端四

    类加载过程

      虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析、初始化,最终形成可以被虚拟机执行使用的Java类型 

    加载:class文件读入内存,创建一个java.lang.Class对象。

    验证:校验读取的class文件满足虚拟机要求。

    准备:为类变量分配内存空间,赋零值。

    解析:将常量池中所有的符号引用全部转成直接引用。

    初始化:执行static标识的代码段。

    双亲委派模型 解决了各个类加载器的基础类的统一问题
      一个类加载器收到类加载的请求,先把请求委托给父加载器去完成。
      父加载器在它的搜索范围中没有找到所需的类时,子加载器才会尝试自己去加载该类。

    名称特征作用配置异常
    栈区 线程私有,使用一段连续的内存空间 存放局部变量表、操作栈、动态链接、方法出口 -XSs StackOverflowError OutOfMemoryError
    线程共享,生命周期与虚拟机相同 保存对象实例 -Xms -Xmx -Xmn OutOfMemoryError
    程序计数器 线程私有、占用内存小 字节码行号
    方法区 线程共享 存储类加载信息、常量、静态变量等 -XX:PermSize -XX:MaxPermSize OutOfMemoryError
  • 相关阅读:
    TCP协议特点和三次握手/四次挥手
    CAP定理、BASE理论
    对自写的Asp.Net分页控件的应用方式(异步无刷新分页)
    Asp.Net分页控件
    SqlHelper
    简易贪吃蛇
    测试一下
    iOS --- DIY文件名批量修改
    iOS常用 --- NSDictionary 与 NSMutableDictionary
    iOS常用---NSArray,NSMutabuleArray
  • 原文地址:https://www.cnblogs.com/sg9527/p/8672396.html
Copyright © 2011-2022 走看看