[问题] 关于动态加载与静态加载

楼主: tas72732002 (葱头)   2015-06-02 19:22:30
因为最近在看反射, 看到了动态加载的部分, 想请问一下各位
静态加载, 代表编译时期其就确定了"可能"加载的class, 一般使用new呼叫称做静态加载
动态加载, 代表执行时才加载指定的class, 一般透过Class.forName(类别名称)来进行动态加载
不知以上的定义是否有错误?
此外, 如果已经确定了可能使用的类别, 那还需要动态加载吗?
如程式中有三种情况, 依照不同情况执行,
if ( args[0] == "aMethod") {
aMethod demo = new aMethod();
} else if(args[0] == "bMethod") {
bMethod demo = new bMethod();
} else if(args[0] == "cMethod") {
cMethod demo = new bMethod();
}
这样我还需要使用动态加载的方法吗?
之前看到使用动态加载的如JDBC的使用,
所以我的了解是, 如果不确定要产生的物件是什么, 可以使用动态加载,
但上述情况已经确认会有三种情况, 那还需要使用动态加载吗?
作者: realmeat (真肉)   2015-06-03 12:36:00
能不用就不用, 最好不要学... 看到反射的code会有怒火
作者: Killercat (杀人猫™)   2015-06-03 17:55:00
唉,我也讨厌,但是这是世界潮流
作者: LaPass (LaPass)   2015-06-03 21:39:00
把反射的部份包成物件,眼不见为净,就像是gson动用反射,但外面在用时一样不会被反射给污染
作者: Killercat (杀人猫™)   2015-06-04 00:17:00
其实不用reflect就不可能用annotation我只能说,讨不讨厌跟世界潮流两回事 我也很讨厌spring但是事实就是大家都用 囧 乖乖跟着跑吧
作者: cyclone350 (老子我最神)   2015-06-04 01:18:00
To K大,可说明下为啥讨厌spring吗?
作者: Killercat (杀人猫™)   2015-06-04 14:15:00
大多数用spring的专案 其实都不需要spring,SSH本身随便一个都是很肥重的东西。SSH另外两个Strut2跟Hibernate就算了,Spring是最常被用在不需要用的地方的框架常常看到一个netty就能解决的东西硬要导入Spring MVC但是我说过,世界潮流就是这样.... orz
作者: jjmachen (jjmachen)   2015-06-08 21:35:00
跟着潮流,公司才找得到人投标做专案

Links booklink

Contact Us: admin [ a t ] ucptt.com