博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JVM 用户自定义类加载器实现步鄹
阅读量:3959 次
发布时间:2019-05-24

本文共 723 字,大约阅读时间需要 2 分钟。

  • 开发人员可以通过继承抽象类java.lang.ClassLoader类的方式,实现自己的类加载器,以满足一些特殊的需求;
  • 在JDK1.2之前,在自定义类加载器时,总会去继承ClassLoader类并重写loadClass()方法,从而实现自定义的类加载器,但是在JDK1.2之后已不再建议用户去覆盖loadClass()方法,而是建议把自定义的类加载逻辑写在findClass()方法中;
  • 在编写自定义类加载器时,如果没有太过复杂的需求,可以直接继承URIClassloader类,这样就可以避免自己去编写findClass()方法及其获取字节码流的方式,使自定义类加载器编写更加简洁;
关于ClassLoader
  • ClassLoader类,它是一个抽象类,其后所有的类加载器都继承自ClassLoader(不包括启动类加载器)
  1. getParent():返回该类加载器的父类加载器;
  2. loadClass(String name):加载名称为name的类,返回结果为java.lang.Class类的实例;
  3. findClass(String name):查找名称为name的类,返回结果为java.lang.Class类的实例;
  4. findLoaderClass(String name):查找名称为name的已经被加载过的类,返回结果java.lang.Class类的实例;
  5. defineClass(String name,byte[] b,int off,int len):把字节数组b中的内存转换为一个java类,返回结果为java.lang.Class类的实例;
  6. resolveClass(Class<?> c):连接指定的一个Java类、;

转载地址:http://kqqzi.baihongyu.com/

你可能感兴趣的文章
软件配置管理概念-2,用户角色
查看>>
软件配置管理概念-3,CM系统的概念
查看>>
JSP/Servlet应用程序优化八法
查看>>
人生必修的181条佛理
查看>>
The Most Widely Used Java Libraries
查看>>
简单在单机使用apache-james(开源邮件服务器)
查看>>
lsof 快速起步
查看>>
使用ScribeFire方便地发布blog
查看>>
跨平台Java程序注意事项
查看>>
Python字符与数字的相互转换
查看>>
C 指针解读
查看>>
有关乱码的处理---中国程序员永远无法避免的话题
查看>>
JSP的运行内幕
查看>>
python超简单的web服务器
查看>>
代理模式、静态代理、动态代理、aop
查看>>
Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00
查看>>
大型Web2.0站点构建技术初探
查看>>
机器学习算法汇总:人工神经网络、深度学习及其它
查看>>
解决Spring中AOP不能切入Struts的DispatchAction方法的问题
查看>>
出国以后才知道英语应该怎么学
查看>>