为什么已有class文件,却要用反射获得实例对象?

刚学习到Java的servlet部分,其使用了反射机制获得对象及方法。请问项目里已有了背景进行反射调用的servlet类的class文件,为什么要用反射去获得实例对象呢,服务器直接使用class文件new对象岂不更好?

因为构造函数可能是私有的,无法使用new调用。

另外,一个方法为什么要设计成私有的也是有其设计需要在里面的,这个展开讲有点庞大。

比较接受以下说法(只是感觉,初学,蜻蜓点水):
1.用反射是运行时依赖,用new是编译时依赖。
2.既然用到了反射,那就说明这是通用模版,所需要的类,方法名,参数都是未知的,需要传过来的。
3.性能考虑&类加载器的考虑(不明觉厉,偷来的)