我有一个非公开的期末课程,如下所示:
final class FragmentManagerImpl {
...
}
Run Code Online (Sandbox Code Playgroud)
请注意,它不是公共的,并且没有声明的构造函数。
我想使用反射实例化此类的实例。但是,以下两个代码片段都会导致 IllegalAccessException:
// BUG IllegalAccessException on calling newInstance
final Class c = Class.forName("android.support.v4.app.FragmentManagerImpl");
c.newInstance();
// BUG IllegalAccessException on calling newInstance
final Class c = Class.forName("android.support.v4.app.FragmentManagerImpl");
final Constructor constructor = c.getDeclaredConstructor();
constructor.setAccessible(true);
constructor.newInstance();
Run Code Online (Sandbox Code Playgroud)
从不是 android.support.v4.app 的包实例化此类的正确方法是什么?