処理系の使い方
Cのプログラミングを学習済みとして説明しています。
ソースプログラム
- ソースプログラムはエディタを使って作成します。
- Javaプログラムはクラスを定義するものです。
クラス名の1文字目は大文字にします。
ファイル名はクラス名の後に .java をつけたものでなければならない。
Javaソースプログラムの構造
コンパイル
- コンパイルするには次のコマンドを使います。
> javac ソースファイル名
ソースファイル名はクラス名の後に .java をつけたものですから次のように考えても同じです。
> javac クラス名.java
- コンパイルによりJava仮想マシンの機械語であるバイトコードが生成されます。
- ソースプログラム Abc.java がコンパイルされるとクラスファイル Abc.class が作られます。(Abcの部分はクラス名)
実行
- 実行は仮想機械(JVM)上で行います。
- コマンド
> java クラス名
- を入力するとJVM上で、指定クラスのmainメソッドが実行されます。
- Lesson1.java をコンパイルしてできた Lesson1.class (内のmain)を実行するには
> java Lesson1
- と入力します。
mainメソッドを含むプログラム
- javaコマンドを用いて直接実行できるのは、mainメソッドを含むクラスに限ります。
- mainメソッドを含まないクラスを定義することもできます。
- mainメソッドを含むソースプログラムの構造は次のようになります。
例
- Hello, World ! と表示するプログラム。
- Lesson1 というクラスを定義しています。
- クラス名が Lesson1 のときファイル名は Lesson1.java になります。
別の環境(OS)で利用する
実行
- 実行したいOS上にJVMが存在すれば、クラスファイルをコピーするだけで、修正なく同様に実行できます。
- コンパイルしたのと同じOS上で実行できるのはあたりまえ。
- Windows上でコンパイルしてLinux上で実行することも可能です。
- Linux上でコンパイルしてWindows上で実行することも可能です。
- MacOSや他の多くのプラットフォーム上にも用意されています。
コンパイル
- 別のOS上で作成されたソースプログラムをコンパイルするときは文字コードの扱いに注意が必要です。
- OSの標準とは異なる文字コードで記述されたプログラムをコンパイルするときは -encoding オプションで文字コードを指定します。
- SJISで記述したプログラムを別のOS上でコンパイルするときには
> javac -encoding SJIS filename.java
- のようにします。
- Windowsでの標準の文字コードはSJISです。
- 演習用サーバ(Linux)での標準の文字コードはUTF-8です。
コマンドオプション
- javac java どちらのコマンドにもオプションを指定することができます。
- 使えるオプションは
> javac -help
> java -help
- で調べられます。
- バージョンを調べるには
> javac -version > java -version
- とします。
Javaのバージョン
- 書籍やネット上の情報などでは Javaのバージョンと処理系のバージョン表記に違いがあるので注意してください。
Javaのバージョン
処理系のバージョン
Java
Java 1.02
Java 1.1
Java2
Java 1.2
Java 1.3
Java 1.4
Java5
Java 1.5
Java 1.6
実習室での注意
- この授業用のフォルダ(ディレクトリ)を作成し、そのフォルダ(ディレクトリ)内にここで使う.javaファイルや.classファイルなどを置きましょう。
- Windowsを使う場合、フォルダ名は直接入力で入力できる文字で付けること。
- 上の使い方の説明で>の記号はプロンプトを表しています。
Windowsではドライブ名、フォルダ名に続いて > が表示されます。
- Linuxではディレクトリ名に続いて $ が表示されます。
コンパイルと実行の例
- Linux(演習用サーバ)の場合
[name@linux ~]$ cd proa [name@linux proa]$ javac Sample.java [name@linux proa]$ java Sample
- Windowsの場合
z:\> cd proa z:\proa> javac Sample.java z:\proa> java Sample
できるだけ演習用サーバを利用してください。