想要通过反射获取单例模式类的对象。但是单例模式下,构造方法是私有的直接使用newInstance()
会报错。如下代码
String name = "com.zifeiyu.Factory";
Factory fac = (Factory)Class.forName(name).newInstance();
想着使用单例类提供的getInstance方法
String name = "com.zifeiyu.Factory";
Factory fac = (Factory)Class.forName(name)
.getMethod("getInstance",null) // 参数1:方法名, 参数2:方法的参数类型
.invoke(null,null);