作者tas72732002 (蔥頭)
看板java
標題[問題] 關於動態載入與靜態載入
時間Tue Jun 2 19:22:30 2015
因為最近在看反射, 看到了動態載入的部分, 想請問一下各位
靜態載入, 代表編譯時期其就確定了"可能"載入的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的使用,
所以我的了解是, 如果不確定要產生的物件是什麼, 可以使用動態載入,
但上述情況已經確認會有三種情況, 那還需要使用動態載入嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.69.59.91
※ 文章網址: https://webptt.com/m.aspx?n=bbs/java/M.1433244152.A.AA4.html
1F:→ realmeat: 能不用就不用, 最好不要學... 看到反射的code會有怒火 06/03 12:36
2F:→ Killercat: 唉,我也討厭,但是這是世界潮流 06/03 17:55
3F:推 LaPass: 把反射的部份包成物件,眼不見為淨,就像是gson動用反射, 06/03 21:39
4F:→ LaPass: 但外面在用時一樣不會被反射給污染 06/03 21:40
5F:推 Killercat: 其實不用reflect就不可能用annotation 06/04 00:17
6F:→ Killercat: 我只能說,討不討厭跟世界潮流兩回事 我也很討厭spring 06/04 00:17
7F:→ Killercat: 但是事實就是大家都用 囧 乖乖跟著跑吧 06/04 00:17
8F:→ cyclone350: To K大,可說明下為啥討厭spring嗎? 06/04 01:18
9F:→ Killercat: 大多數用spring的專案 其實都不需要spring,SSH本身 06/04 14:15
10F:→ Killercat: 隨便一個都是很肥重的東西。 06/04 14:15
11F:→ Killercat: SSH另外兩個Strut2跟Hibernate就算了,Spring是最常 06/04 14:16
12F:→ Killercat: 被用在不需要用的地方的框架 06/04 14:16
13F:→ Killercat: 常常看到一個netty就能解決的東西硬要導入Spring MVC 06/04 14:17
14F:→ Killercat: 但是我說過,世界潮流就是這樣.... orz 06/04 14:17
15F:→ jjmachen: 跟著潮流,公司才找得到人投標做專案 06/08 21:35