小博老師解析Java核心技術 ——動態解析Jar的運用

[引言]

我們在學習Java編程時都知道,Java的項目發布成類型為jar的文件,如果是runnable jar文件可以直接運行。而如果是普通的jar文件,則可以引入到其他項目中重用。今天小博老師就和大家交流一下,在項目中引入其他jar文件的使用。

[步驟閱讀一]預先加載Jar到Library

這種方式相信學習了一段時間的朋友都不陌生,將現成的jar文件引入到項目的Library庫中,便可以直接使用了,在框架開發的配置中尤為常見,在這里就不浪費時間再過多重復了。

但是有的時候(C/S模型項目居多),我們的項目已經發布完畢,并且已經安裝到多臺客戶端上,這個時候我們需要對程序進行更新,那么勢必需要重新編譯并且發布項目,然后在每一個客戶端上重新安裝新的程序,這會使得我們的更新工作非常麻煩(C/S模型項目龐客戶端的通病)。那么如何有效降低龐客戶端的更新工作量呢?接下來小博老師就給大家介紹一種動態解析Jar的方法。

[步驟閱讀二]生成Jar

小博老師通過一個簡答的計算器案例,最初只有加法和減法功能,后期需要更新乘法和除法的功能,來讓大家體驗一下動態加載Jar的使用方法。

首先我們設計計算器中計算方法的抽象父類,核心代碼如下:

packagecom.bwf.common;

/**

* 計算的抽象父類

* */

publicabstractclassCalculate {

protecteddoublenum1;// 參與計算的第一個數據

protecteddoublenum2;// 參與計算的第二個數據

protectedStringsymbols;// 運算的符號

/**

* 計算結果的抽象方法

*@return運算后的結果

* */

publicabstractdoublegetResult();

// 省略getter和setter

}

接下來我們設計加法運算的派生實現類,核心代碼如下:

packagecom.bwf.common.calculate.version0001;

importcom.bwf.common.Calculate;

/**

* 加法運算派生實現類

* */

publicclassAdditionextendsCalculate{

publicAddition(){

symbols="+";// 設置運算的符號

}

/**

* 實現抽象超類中的抽象方法,加法運算的實現

*@return通過加法運算后的結果

* */

publicdoublegetResult() {

returngetNum1() + getNum2();

}

}

同樣的方式,我們設計減法運算的派生實現類,核心代碼如下:

packagecom.bwf.common.calculate.version0001;

importcom.bwf.common.Calculate;

/**

* 減法運算派生實現類

* */

publicclassSubtractionextendsCalculate{

publicSubtraction(){

symbols="-";// 設置運算的符號

}

/**

* 實現抽象超類中的抽象方法,減法運算的實現

*@return通過減法運算后的結果

* */

publicdoublegetResult() {

returngetNum1() - getNum2();

}

}

接下來我們把加法和乘法的實現類,發布成jar文件,放在項目中新建文件夾calculates中。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容