- 相關(guān)推薦
關(guān)于Java動態(tài)實現(xiàn)的方法
如果需要像前面自行車的例子一樣,創(chuàng)建一些用不同方式實現(xiàn)同一接口的對象,那么可以使用一個工廠方法或簡單工廠對象來簡化選擇實現(xiàn)的過程。這種選擇可以是明確進行的也可以是隱含的。前者如自行車那個例子,顧客可以選擇需要的自行車型號;而下一節(jié)所講的XHR工廠那個例子則屬于后者,該例中所返回的連接對象的類型取決于所探查到的帶寬和網(wǎng)絡(luò)延時等因素。在這些場合下,你通常要與一系列實現(xiàn)了同一個接口、可以被同等對待的類打交道。這是JavaScript中使用工廠模式的最常見的原因。
如果對象需要進行復(fù)雜并且彼此相關(guān)的設(shè)置,那么使用工廠模式可以減少每種對象所需的代碼量。如果這種設(shè)置只需要為特定類型的所有實例執(zhí)行一次即可,這種作用尤其突出。把這種設(shè)置代碼放到類的構(gòu)造函數(shù)中并不是一種高效的做法,這是因為即便設(shè)置工作已經(jīng)完成,每次創(chuàng)建新實例的時候這些代碼還是會執(zhí)行,而且這樣做會把設(shè)置代碼分散到不同的類中。工廠方法非常適合于這種場合。它可以在實例化所有需要的對象之前先一次性地進行設(shè)置。無論有多少不同的類會被實例化,這種辦法都可以讓設(shè)置代碼集中在一個地方。
如果所用的類要求加載外部庫的話,這尤其有用。工廠方法可以對這些庫進行檢查并動態(tài)加載那些未找到的庫。這些設(shè)置代碼只存在于一個地方,因此以后改起來也方便得多。
【Java動態(tài)實現(xiàn)的方法】相關(guān)文章:
java利用反射實現(xiàn)動態(tài)代理實現(xiàn)代碼10-08
java使用動態(tài)代理來實現(xiàn)AOP05-29
Java中如何實現(xiàn)顯示動態(tài)的時間09-28
Java實現(xiàn)多線程的方法11-10
實現(xiàn)java屏幕抓屏的方法08-24