• 検索結果がありません。

Java コンパイラ

第 7 章 言語処理系 ( コンパイラ ) 149

7.7 Java コンパイラ

Javaは,オブジェクト指向言語(Object Oriented Language)です.オブジェクト 指向言語とは,プログラムをオブジェクトという機能の単位で構成しようとするプログラ ミングスタイルのための言語です.

Javaでプログラムを書くということは,オブジェクトを作成する際のひな形となる,ク ラスの定義を記述するということです.クラスの定義には,そのオブジェクトがどのよう なデータを持っているかという定義と,どのような手続き(メソッド)を持っているかと いう定義が含まれます.

Javaのプログラムを実行すると,プログラマが記述したクラス定義に従ってオブジェク トが生成され(インスタンス化),生成されたオブジェクト間でのやりとりを通じてプロ グラムの実行が行われます.

また,Javaのプログラムは高いポータビリティを持っており,同じプログラムをMac

でもWindowsでも実行することができます.特に,通常のJavaのプログラム以外に,ア

プレットと呼ばれるWebページなどに埋め込み可能なプログラムを作ることができます.

これについては,この節の後半で説明をしていきます.

7.7.1 Javaプログラムのコンパイルと実行

Javaのソースファイルのファイル名は,ファイル中で宣言されているクラスの名前

に,”.java”の拡張子をつけたファイルにしなければなりません.従って,一つのファイル

に一つのクラスという構成になります.例えば,MyTestというクラスの定義を含むソー スファイルは,MyTest.javaというファイル名でなくてはなりません.

まず,サンプルとして”Hello, Java World!”と表示するためのプログラムを紹介します.

このプログラムは,以下の通りとなります.

MyTest.java

³

1 public class MyTest {

2 public static void main(String args[]) { 3 System.out.println("Hello, Java world!");

4 }

5 }

µ ´

このプログラムをコンパイルするためには,javacコマンドを用いて以下のようにコマ ンドを入力します.

実行例 ³

$ javac MyTest.java

µ ´

これにより,MyTest.classという名前のクラスファイル(Class File)が生成されます.

クラスファイルとは,ソースファイルをコンパイルした結果のバイトコードが書かれてい

ます.バイトコードは,Javaの実行環境が解釈して実行します.この実行環境のことを Java Runtime Environment(JRE)と言います.

Javaの実行環境を使ってプログラムを実行させるためには,javaコマンドを使用しま す.引数には,main関数の入っているクラスのクラス名を指定します.引数に指定する のは,あくまでもクラス名のみで,クラスファイルの名前ではないことに注意します.

MyTestクラスを実行させる場合には次のようにします.

実行例 ³

$ java MyTest

Hello, Java world!

µ ´

7.7.2 Javaアプレットのコンパイルと実行

アプレットを使用したプログラムでは,通常のJavaプログラムと比べてプログラムの 作り方が変わってきます.また,Webページ上に埋め込むので,HTMLファイルも必要 になってきます.

ここでは,サンプルとして,アプレットのウィンドウを開いて”Hello, Java World”と表 示するプログラムを説明します.サンプルのJavaのコードは以下の通りです.

MyTestApl.java

³

1 import java.applet.Applet;

2 import java.awt.Graphics;

3

4 public class MyTestApl extends Applet { 5 public void init() {

6 resize(150,30);

7 }

8 public void paint(Graphics g) {

9 g.drawString("Hello, Java world!",50,25);

10 }

11 }

µ ´

これをコンパイルするには,先ほどと同じようにしてjavacコマンドを使用します.

実行例 ³

$ javac MyTestApl.java

µ ´

コンパイルしたアプレットのプログラムを呼び出すためのHTMLファイルを用意しま す.今回は,以下のファイルを使用します.

MyTestApl.html

³

<html>

<head>

<title>MyTestApl Applet</title>

</head>

<body>

MyTestApl Applet

<hr>

<applet code="MyTestApl.class" width=150 height=30></applet>

<hr>

<a href="MyTestApl.java">Source</a>

</body>

</html>

µ ´

これを実行するには,appletviewerコマンドを使用します.また,このプログラムを実 行すると図7.1のようになります.

実行例 ³

$ appletviewer MyApplet.html

µ ´

図7.1: Javaアプレットの実行画面