ClassLoader

自定义的类加载器实现

编写一个类,继承ClassLoader类,​然后覆盖 findClass()方法。实现该方法时,应注意必须至少做到两点:
1.为本地文件系统或其他来源的类加载其字节码,
2、调用超类的defineClass()方法,向虚拟机提供字节码。

编写自定义类加载器用途

  1. 可以在向虚拟机传递字节码之间执行定制的检查​。

  2. 加载加密过的类文件,使用秘钥进行解密。​

  3. 为了区分常规的类加载器,对加密的类文件使用不同的扩展名,比如Caesar密码加密的,使用.caesar作为扩展名。

  4. 加密后的类文件不能被标准虚拟机执行,并且不能轻易被反汇编。

  5. 用定制的类加载器认证类用户的身份,确保付费许可。

  6. 加密后将类文件存储到数据库中。​

  7. 解决类冲突,不同版本加载。

posted @ 2021-12-05 00:14  倔强的老铁  阅读(48)  评论(0编辑  收藏  举报