java的自動拆箱和裝箱
執行環境:jdk1.8.0_162 + window10 + Ecipse Java Photon(4.8.0).
本文將會演示兩種建立並使用java的jar的常用方法。1、使用“Eclipse Java Photon”建立並使用jar。2、使用cmd視窗doc命令建立並使用jar。演示例項:複數類。其程式碼如下:
package Complexjar; public class complex { // 1. 私有屬性:real(實部)、imag(虛部)。 private double real, imag; // 2. 無參構造與帶參構造 public complex(){ realComplex=0.0; imag=0.0; } public complex(double r, double i) { real=r; imag=i; } // 3. 編寫獲取屬性值和設定屬性值的方法 public double Real() { return real; } public double Imag() { return imag; } public void set(double r, double i) { real=r; imag=i; } // 4. 定義一個實現輸出複數資訊的方法 public void print(complex case1) { if (case1.imag==0) { System.out.println(case1.real); } else { if(case1.imag>0) { System.out.println(case1.real+ " " +"+"+ " " +case1.imag+"i"); }else { System.out.println(case1.real+ " " +case1.imag+"i"); } } if(case1.real==0) { System.out.println(case1.imag+"i"); } } // 5.定義複數的四則運算 public complex add(complex a, complex b) { complex c = new complex(); c.real=a.real+b.real; c.imag=a.imag+b.imag; return c; } public complex sup(complex a, complex b) { complex c = new complex(); c.real=a.real-b.real; c.imag=a.imag-b.imag; return c; } public complex mul(complex a, complex b) { complex c = new complex(); double x1,y1,x2,y2; x1=a.real; y1=a.imag; x2=b.imag; y2=b.imag; c.real=x1*x2-y1*y2; c.imag=x1*y2+x2*y1; return c; } public complex div(complex x1, complex x2) { complex x3 = new complex(); double a,b,c,d,k; a=x1.real; b=x1.imag; c=x2.real; d=x2.imag; k=1/(c*c+d*d); x3.real=k*(a*c+b*d); x3.imag=k*(b*c-a*d); return x3; } }
【1】 Eclipse Java Photon建立並使用jar
1. 首先在Eclipse裡建好相關的java檔案,並執行通過。(注意:要有包名package ***)檢查無誤後,進入下一步。
2. 再建一個包可以命名為Complexjar,並把之前寫好的Complex.java複製到新建的包去。
3. 右鍵單擊Complexjar包名,在彈出的選單中選擇 Export。
4. 在Export對話方塊中選擇java,再點選JAR file。然後點選Next>,然後照著下圖操作:
這裡可選可不選
因為這個包只有一個複數類,所以下面的可選可不選:
完成建立後,你會在這個地方發現多了一個Complex.jar檔案。
接著,你只要把這個檔案複製到你的jdk安裝目錄的jre\lib\ext裡面。如果你不知道你的jdk安裝在哪。可以如下操作:
找到安裝路徑後,把Complex.jar放到以下資料夾中:
最後,對這各Complex.jar進行測試。可仿照如下圖片所示操作:新建一個JarTest包,在該包裡面建一個test.java檔案,輸入如下程式碼:
package JarTest; import Complex.complex;; public class test { public static void main(String args[]) { complex case1 = new complex(1.0,1.0); complex case2 = new complex(); case2.set(2.0,2.0); complex result = new complex(); System.out.println(case1.Real()+"+"+case1.Imag()+"i"); // 加法 參考答案:3.0 + 3.0i result.print(result.add(case1,case2)); // 減法 參考答案:-1.0 -1.0i result.print(result.sup(case1,case2)); // 乘法 參考答案:4.0i result.print(result.mul(case1,case2)); // 除法 參考答案:0.5 result.print(result.div(case1,case2)); } }test
執行結果如下:則說明你所建立的jar沒有問題。
【2】 cmd+文字建立並使用jar
使用的例項同樣是上述的複數類。這裡先給出,接下來需要用到的cmd命令:
g: , cd ***\*** // 首先定位到你的java檔案所在的路徑 javac 包名\***.java // 編譯你的java檔案 jar cfm ***.jar ***.mf 包名\***.class // 把清單檔案***.mf和編譯好的***.class裝箱,並命名為***.jar jar cfm ***.jar ***.mf 包名\*.class // 只有位元組碼檔案時。
圖片過程如下:(主要使用Eclipse建好的檔案,這裡就不再用文字檔案再寫一次了。)快捷鍵win+r在“執行”對話方塊中開啟cmd。
cmd的過程如下:(其中包含了錯誤的一些操作)
C:\Users\lenovo>g: G:\>cd \zuoye\2021\JavaExperiment\cater4\src\Complexjar G:\zuoye\2021\JavaExperiment\cater4\src\Complexjar>javac Complexjar\complex.java javac: 找不到檔案: Complexjar\complex.java 用法: javac <options> <source files> -help 用於列出可能的選項 G:\zuoye\2021\JavaExperiment\cater4\src\Complexjar>javac complex.java complex.java:4: 錯誤: 編碼GBK的不可對映字元 // 1. 縐佹湁灞炴?э細real錛堝疄閮級銆乮mag錛堣櫄閮級銆? ^ complex.java:4: 錯誤: 編碼GBK的不可對映字元 // 1. 縐佹湁灞炴?э細real錛堝疄閮級銆乮mag錛堣櫄閮級銆? ^ complex.java:6: 錯誤: 編碼GBK的不可對映字元 // 2. 鏃犲弬鏋勯?犱笌甯﹀弬鏋勯?? ^ complex.java:6: 錯誤: 編碼GBK的不可對映字元 // 2. 鏃犲弬鏋勯?犱笌甯﹀弬鏋勯?? ^ complex.java:6: 錯誤: 編碼GBK的不可對映字元 // 2. 鏃犲弬鏋勯?犱笌甯﹀弬鏋勯?? ^ complex.java:15: 錯誤: 編碼GBK的不可對映字元 // 3. 緙栧啟鑾峰彇灞炴?у?煎拰璁劇疆灞炴?у?肩殑鏂規硶 ^ complex.java:15: 錯誤: 編碼GBK的不可對映字元 // 3. 緙栧啟鑾峰彇灞炴?у?煎拰璁劇疆灞炴?у?肩殑鏂規硶 ^ complex.java:15: 錯誤: 編碼GBK的不可對映字元 // 3. 緙栧啟鑾峰彇灞炴?у?煎拰璁劇疆灞炴?у?肩殑鏂規硶 ^ complex.java:15: 錯誤: 編碼GBK的不可對映字元 // 3. 緙栧啟鑾峰彇灞炴?у?煎拰璁劇疆灞炴?у?肩殑鏂規硶 ^ complex.java:26: 錯誤: 編碼GBK的不可對映字元 // 4. 瀹氫箟涓?涓疄鐜拌緭鍑哄鏁頒俊鎭殑鏂規硶 ^ complex.java:42: 錯誤: 編碼GBK的不可對映字元 // 5.瀹氫箟澶嶆暟鐨勫洓鍒欒繍綆? ^ 11 個錯誤 G:\zuoye\2021\JavaExperiment\cater4\src\Complexjar>javac -encoding UTF-8 complex.java G:\zuoye\2021\JavaExperiment\cater4\src\Complexjar>
到了這一步就成功生成complex.class檔案了。至於上述的一些錯誤,這裡不做更多的解釋(因為本文主要是展示怎樣裝箱和拆箱)。
然後在同一目錄下,新建一個文字檔案:
並輸入下述內容:(注意:文字的編碼格式是UTF-8),然後改變文件的字尾名:
Manifest-Version: 1.0 Class: Complexjar.complex Created-By: 1.8
然後,回到cmd視窗,輸入如下命令:
G:\zuoye\2021\JavaExperiment\cater4\src\Complexjar>jar cfm Complex.jar hello.mf complex.class
你會看到在同一個目錄下會生成一個Complex.jar檔案。
然後是測試Complex.jar。同樣是把該檔案放到上述的目錄下:
----------------------------------------Continue-----------------------------------------------------------------