我如何获得不安全类的实例?
我总是得到安全例外.我列出了OpenJDK 6实现的代码.我想把功能sun.misc.Unsafe提供给我,但我总是得到了SecurityException("Unsafe").
public static Unsafe getUnsafe() {
Class cc = sun.reflect.Reflection.getCallerClass(2);
if (cc.getClassLoader() != null)
throw new SecurityException("Unsafe");
return theUnsafe;
}
Run Code Online (Sandbox Code Playgroud)
(请不要试图告诉我使用这门课是多么不安全.)
小智 6
从 baeldung.com,我们可以使用反射获取实例:
Field f =Unsafe.class.getDeclaredField("theUnsafe");
f.setAccessible(true);
unsafe = (Unsafe) f.get(null);
Run Code Online (Sandbox Code Playgroud)