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
  • 相关阅读:
    topk 问题 --转载
    MySQL是否使用外键
    MySQL的事务隔离---总结和转载
    MySQL设计规范--转自腾讯云社区
    docker图解--转载
    单点登录soo-转载
    在linux上配置后端所需的内容
    推荐一个计算机漫画地址
    python与mysql数据库连接中常见错误
    python_excel_读写(转载)
  • 原文地址:https://www.cnblogs.com/sg9527/p/8672396.html
Copyright © 2011-2022 走看看