wiki:Java_Lab1

Version 10 (modified by jazz, 15 years ago) (diff)

--

從 C++ 到 Java : 入門級爪哇程式練習

練習一: 基本爪哇程式編譯指令與執行方法

  • 下載 Java TutorialHelloWorldApp.java 範例程式原始碼
    hadoop004@hadoop:~$ wget http://java.sun.com/docs/books/tutorial/getStarted/application/examples/HelloWorldApp.java
    hadoop004@hadoop:~$ javac HelloWorldApp.java
    
  • 執行 HelloWorldApp 範例程式
    hadoop004@hadoop:~$ java HelloWorldApp
    
  • 程式解說:
    • Java 程式原始碼,檔案名稱必須與類別名稱一致。一個程式原始碼若有多於一個的類別,只有一個可以是 public 類別,其餘必須是 private 或內部類別(inner class)。若不加 public 或 private 預留關鍵字,則預設為 private 類別。
      class HelloWorldApp {       // 類別名稱為 HelloWorldApp 因此程式原始碼檔名必須為 HelloWorldApp.java
      
    • 與 C/C++ 相似,Java Application 主程式的進入點為 main 函數,唯其型態比較複雜,必須為 public static void,宣告為 public 其他類別才可以呼叫,宣告為 static 才能直接透過類別名稱呼叫,void 代表沒有回傳値。程式的參數以 String 類別型態傳入,類似 C/C++ 的 argv 變數。註:若要撰寫可以鑲嵌在網頁的程式,必須繼承 Applet 類別,其進入點就不是 main 函數,而是 init 函數。
      public static void main(String[] args)
      
    • Java Application (類似 DOS 底下的 C/C++ 命令列程式) 可以用 System.out.println() 函數來顯示字串,可想成對應 C 的 printf() 函數,或 C++ 的 cout。
      System.out.println("Hello World!");
      

練習二:慢慢長大的類別 ─ public, private, field, method

  • 讓我們來練習設計一個複雜一點的類別,若是以 UML (Unified Modeling Language) 來呈現的話,大致上可以畫成底下這張圖:

Error: Macro Image(grid:wiki:jazz/09-07-06:HomeWork.png) failed
No filespec given

hadoop004@hadoop:~$ cat > Test.java <<EOF
import java.io.*;
import java.lang.String;

public class Test
{
  public String myData;

  public String getMyData()
  {
    return myData;
  }

  public void setMyData(String data)
  {
    myData = new String(data);
  }

  public static void main(String args[]) {
    Test myTest = new Test();
    myTest.setMyData("This is a test");
    System.out.print(myTest.getMyData());
  }
}
EOF

Attachments (1)

Download all attachments as: .zip