1. 通过全类名获取此类的二进制字节流
  2. 将这个字节流所代表的静态存储结构转化为 方法区 的运行时数据结构
  3. 内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口

加载class文件的方式

  1. 从本地系统中直接加载
  2. 通过网络获取
  3. 从jar、war包中获取
  4. 运行时计算生成,使用最多的是,动态代理技术
  5. 有其他文件生成,JSP应用
  6. 从专有数据库中提取
  7. 从加密文件中获取