3.2.加载和连接

在加载和连接阶段,会发生以下步骤(注意,有很多连接工作延迟到执行阶段才会执行)。

  • ABC文件加载到内存并被解码

    这个初始的解码过程会验证ABC文件结构是否正确,相关的字段是否包含对ABC文件内其他部分的合法引用。

  • 创建类和脚本(classes and scripts)的trait对象

  • 子类/父类关系被解析 每个类的父类的trait集将会合并到该类的trait集,类的接口集中的接口将会被查找。早期解析(early resolution)会保证继承图表(inheritance graph)是树形的。

  • 常量池构建
    每个对常量池其他元素的引用都会被解析。

  • 方法体与方法信息(签名)结构连接。