JAVA

1 前言

這是一個 JAVA IO 的範例程式。


2 程式碼說明

這部份說明 JAVA 的程式碼。

這個範例的目錄結構如下:
有四個目錄,src、classes、lib、bin。
PROJECT 的根目錄放有三個批次檔,makejava.bat、jarlib.bat、jarexecutable.bat
這是所有範例的基本型,所有範例都會以這樣的基本型發展出來。

java java

這個範例的程式碼如下︰
這是這個範例的唯一的JAVA程式碼檔案 JMain.java.

filename JMain.java

00001 import java.io.*;
00002 public class JMain{
00003     public static void main(String[] args){
00004         try{
00005 	    	FileInputStream file=new FileInputStream("readme.txt");
00006 	    	int n,result;
00007 	    	while((n=file.available())>0){
00008 	    		byte[] Buffer=new byte[n];
00009 	    		result=file.read(Buffer);
00010 	    		if(result==-1) break;
00011 	    		String string=new String(Buffer);
00012 	    		System.out.print(string);
00013 	    	}
00014 	    }	
00015 	    catch(IOException e){System.err.println(e);}
00016 	    System.out.println();
00017 	}
00018 }

這支 JAVA 程式會讀取下面的 readme.txt,並將他列印到螢幕上。

My name is  Book Chen.
THis is my java code.
It is nice to see you.
Bye bye.

3 編譯 JAVA

編寫好的 JAVA 程式碼必須經過編譯過程,之後才能產生可以執行的類別檔。makejava.bat 就是用來執行編譯的批次檔,它會先進入 src 目錄,把 src 目錄中的 JAVA 程式碼編譯,編譯過程產生的類別檔通通往 classes 這個目錄丟,所以 classes 目錄裡面的目錄結構和 src 是一模一樣的。

cd src
javac -d c:\code\javabasic\io41\classes c:\code\javabasic\io41\src\JMain.java
cd ..

makejava.bat的執行畫面:

java

4 執行結果

JAVA的執行可以分成三種方式,
1.直接執行類別檔
2.執行 JAR 檔,但要指明所要執行的類別檔名稱。這個方式是類別檔的重新包裝。
3.執行 JAR 檔,使用 manafest.txt 把要執行的類別檔包含在 JAR 檔中。這個方式是類別檔的重新包裝。

在根目錄下,執行 jarlib.bat 會得到 JMain.jar,這個 JAR 會被放到 lib 的子目錄中。

  jar cvf ./lib/JMain.jar -C classes /
  

這個JAR壓縮的執行過程和結果:

java

在根目錄下,執行 jarexecutable.bat 會得到 JMain.jar,這個 JAR 會被放到 bin 的子目錄中。

  jar cvfm ./bin/JMain.jar manifest.txt -C classes /
  

這個JAR壓縮的執行過程和結果:

java

其中的 manifest.txt 的內容如下:

Main-Class: JMain

這三種執行方式都會得到同樣的效果,他們的差異在於方便攜帶以及類別庫觀念的使用。

到 classes 目錄執行類別檔的方式和結果。

java

到 lib 目錄執行 JAR 檔的方式和結果,要注意的是引數要用 -cp,後面要加上要執行的類別名稱 JMain。

java

到 bin 目錄執行 JAR 檔的方式和結果。

java