多类加载器的单例模式
Posted jun10ng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多类加载器的单例模式相关的知识,希望对你有一定的参考价值。
对于java而言,进程内唯一(线程唯一)是对同一个类加载器而言的。
在一些情况下我们可能会有两个类加载器,这个时候的单例模式并不能保证单例。所以在这种非单一类加载器的情况下,我们需要指定类加载器来执行单例类的创建。
见下方代码:
private static Class getClass(String classname) throws ClassNotFoundException {
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
if(classLoader == null)
// 如果当前线程的classLoader为null,则指定单例模式的类加载器加载
classLoader = Singleton.class.getClassLoader();
return (classLoader.loadClass(classname));
}
}
以上是关于多类加载器的单例模式的主要内容,如果未能解决你的问题,请参考以下文章