[小西ホームページ]   [目次・索引]   [次の授業]

情報処理IIIA(Javaプログラミング入門)第1回

目次 索引
1.1 教員の紹介
1.2 シラバスの概略
1.2.1 授業目標・概要
1.2.2 授業スケジュール
1.2.3 受講生への要望、履修のポイント、留意事項など
1.2.4 教科書
1.2.5 参考書など
1.2.6 成績評価の方法
1.3 履修者の抽選(4/18実施)
1.4 Javaプログラミング環境
1.4.1 情報処理センターのJava環境
1.4.2 自宅で自習するには
1.5 プログラムの動かし方
1.5.1 全体の手順
1.5.2 プログラムの入力と保存
1.5.3 コンパイル
1.5.4 実行
1.5.5 プログラムのエラー
1.6 アンケート1
javacコマンド  javaコマンド  JDK  SDK  xcalcコマンド  コンパイル  デバッグ  バイトコード 

1.1 教員の紹介

名前
小西 善二郎(こにし ぜんじろう)
所属
早稲田大学ソフトウェア生産技術研究所
連絡先
konishi@twcu.ac.jp

1.2 シラバスの概略

1.2.1 授業目標・概要

この授業では、Java言語を用いて、プログラミングの基礎を学ぶことを目標とします。 具体的には、

がポイントになります。

1.2.2 授業スケジュール

  1. ガイダンス(Javaプログラミング環境、プログラムの動かし方。)
  2. アプレット(アプレットの動かし方、グラフィックスの描画)
  3. 変数と代入文(プログラムとは、式、演算子、変数、代入文。)
  4. 選択(if文、条件式、if-else文、多重if-else文。)
  5. 反復(while文、for文、反復による数値処理。)
  6. 配列(配列、反復による配列処理。)
  7. 手続きと関数(手続きとしてのメソッド、関数としてのメソッド。)
  8. レコードと参照(レコードとしてのインスタンス、参照。)
  9. メッセージ受渡しモデル(値呼出しと参照呼出し、メッセージ受渡しモデル。)
  10. クラスの構成(コンストラクタ、大域変数としてのクラス変数。)
  11. よく使うクラス(論理値、数値、文字、文字列。)
  12. より高度な話題(アプレット・セキュリティ、ガベージ・コレクション。)

1.2.3 受講生への要望、履修のポイント、留意事項など

レポートとアンケートの締め切りを、次の授業の開始時刻とします。 この締め切りは整理の都合によるものであり、遅れて提出してもなるべく採点します。

1.2.4 教科書

授業はホームページ

http://www.twcu.ac.jp/~konishi/index-j.html

にそって進めます。

1.2.5 参考書など

授業内容に応じて参考資料を紹介します。 学内の計算機システムについては、「東京女子大学計算機利用の手引き」を参考にしてください。

1.2.6 成績評価の方法

原則として毎回レポート課題を出します。 課題のない日は出席を確認するアンケートを行います。 レポートの採点結果とアンケートの提出回数を総合して成績を決定します。


1.3 履修者の抽選(4/18実施)

端末の台数の関係で、履修希望者が44名を超えましたら抽選を行います。


1.4 Javaプログラミング環境

1.4.1 情報処理センターのJava環境

一般的に、プログラムを作成するには、プログラム開発用ソフトウェア(言語処理系、開発環境などとよばれる)を用意する必要があります。 プログラマは、開発用ソフトウェアに備わっている機能を利用して、プログラムを実行できるものにしたり( コンパイルcompile )、プログラムの間違いを見つけたり( デバッグdebug )します。 Javaの開発用ソフトウェアにはいくつか種類がありますが、この授業では、サン・マイクロシステムズ社の JDK (Java Development Kit)を用います。 プログラミングの学習が目的でしたら、JDKの提供する機能で十分でしょう。

JDKにはいくつかのバージョンがあります。 情報処理センターのシステムには、バージョン1.0.2, 1.1.8, 1.2.2などがインストールされています。 デフォルトはバージョン1.0.2ですので、この授業ではJDK 1.0.2を用いることにします。

ちなみに、Javaはバージョン1.2.2以降、Java 2とよばれるようになりました。 JDKも、Java 2 SDK (Software Development Kit)という名前になっています。 現在では、バージョン1.4.1がリリースされています。

1.4.2 自宅で自習するには

自宅のパソコンにJDKをインストールすれば、自宅でこの授業の自習ができます。 CD-ROM付きのJavaの本を買い、その本に従ってインストールするのが手軽です。 ただし、今ではJDK 1.0.2を収録した本はなかなか入手できません。 JDK 1.0.2以外(例えばJava 2 SDK 1.3.1)でも、十分に自習が可能です。 注意点は、自宅で作成したプログラムの一部が、センターでは動かないかもしれないということです。

どうしても自宅でJDK 1.0.2を使いたければ、インターネット経由で入手します。 例として、Windows 98/2000が動いているPCにJDK 1.0.2をインストールする方法を説明します。

はじめに、JDK 1.0.2のアーカイブ・ファイルを手に入れます。 URL

http://java.sun.com/products/archive/jdk/1.0.2/

からダウンロードしてください。 ファイルの大きさは4Mバイト弱です。

次に、ダウンロードしたファイルをルートディレクトリ(C:\)に置き、そのファイル(自己解凍形式)を実行します。 すると、ディレクトリ C:\java が作られ、必要なファイルやディレクトリがその中に展開されます。

最後に、ディレクトリ C:\java\bin にパスを通します。 Windows 98の場合は、ファイル C:\autoexec.bat を編集し、PATH 変数の設定に C:\java\bin を追加します。 再起動しますとインストールは完了です。 Windows 2000の場合は、「コントロール・パネル」→「システム」→「環境」と選択し、環境変数 Path の値に C:\java\bin を追加します。 これでインストールは完了です。


1.5 プログラムの動かし方

1.5.1 全体の手順

今日の授業では、Javaのプログラムが与えられたとき、そのプログラムをどうやって動かすかについて説明します。 今日はプログラムの内容を気にする必要はありません。

なお、Javaでプログラムを作成しますと、たくさんのファイルを扱うことになります。 あらかじめ授業用ディレクトリ(例えばjava)を作っておき、そのディレクトリの中で作業してください。

b00a001@Ampere:~% mkdir java
b00a001@Ampere:~% cd java
b00a001@Ampere:~/java%

Javaプログラムの作成から実行までの手順は以下の通りです。

  1. エディタ(xemacsなど)を用いてプログラムを入力する。
  2. 入力したプログラムをファイルに保存する。
  3. Javaコンパイラ(javac)を用いてプログラムからバイトコードを生成する。
  4. Javaインタプリタ(java)を用いてバイトコードを実行する。

「コンパイラ」、「インタプリタ」、「バイトコード」などの用語に耳慣れないかもしれません。 ある程度Javaに慣れましたら説明しますので、今は気にしないでください。

1.5.2 プログラムの入力と保存

はじめに、エディタ(xemacs)を起動してください。 次のプログラムをそっくりそのまま入力し、ファイル名 GoodMorning.java で保存してください。 なお、アルファベットの大文字を小文字に変えたりしないでください。

/* 1*/ class GoodMorning {
/* 2*/     public static void main (String[] args) {
/* 3*/         System.out.println("Good morning!");
/* 4*/     }
/* 5*/ }

Javaのプログラムを保存するときは、ファイル名の拡張子を .java にする必要があります。

1.5.3 コンパイル

次に、端末エミュレータで javacコマンド を実行します。 プログラムが GoodMorning.java に保存されていますので、 javac GoodMorning.java と入力してください。 プログラムが正確に入力できていれば、GoodMorning.class というファイルが生成されます。

b00a001@Ampere:~/java% ls
GoodMorning.java
b00a001@Ampere:~/java% javac GoodMorning.java
b00a001@Ampere:~/java% ls
GoodMorning.class   GoodMorning.java
b00a001@Ampere:~/java%

もし、1 error のようなメッセージが表示されましたら、どこかに入力ミスがあります。 ファイル GoodMorning.java を見直して、入力ミスを正し、保存して、もう一度 javac コマンドを実行してください。 エラーメッセージの見方は後述します。

javac コマンドは、.java ファイルをもとに .class ファイルを生成します。 この .class ファイルの内容が、 バイトコードbytecode ) です。 バイトコードは、もとのプログラムとは似ても似つかない、特殊な文字の並びです。

1.5.4 実行

最後に、端末エミュレータで javaコマンド を実行します。 バイトコードが GoodMorning.class に格納されていますので、 java GoodMorning と入力してください。 (ファイル名から .class を取り除きます。)

b00a001@Ampere:~/java% java GoodMorning
Good morning!
b00a001@Ampere:~/java%

実は、もとのプログラムは、Good morning! と出力するものです。 javaコマンドで、確かに実行できたことが分かります。

1.5.5 プログラムのエラー

javac コマンドは、プログラム中におかしな点を見つけますと、.class ファイルの生成を止め、エラーメッセージを出力します。

例えば、GoodMorning.java で、3行目

        System.out.println("Good morning!");

        Systemout.println("Good morning!");

と間違ったとします。 javac コマンドを実行しますと、

b00a001@Ampere:~/java% javac GoodMorning.java
GoodMorning.java:3: Undefined variable: Systemout
Systemout.println("Good morning!");
^
1 error
b00a001@Ampere:~/java%

というメッセージが表示されます。 これは、3行目の Systemout(記号 ^ の指す点)がおかしいという指摘です。

javac コマンドは必ずしも本当の間違いを指摘するとは限りませんが、エラーメッセージを参考にしてプログラムを直してください。 エラーがなくならない限り、.class ファイルは生成されませんので、プログラム動かすことができないのです。


1.6 アンケート1

履修者の予備知識を確認するため、アンケートを行います。 以下の質問に答え、回答をkonishi@twcu.ac.jpあてにメールで送ってください。 メールには、学生番号、氏名、科目名、授業日(9/26)を明記してください。 アンケートに回答しますと、今日の授業に出席したものと見なします。

  1. 次のパズルが自分でプログラムを作成して解けるかどうかを答えてください。 解ける場合は、どのプログラミング言語かも答えてください。
    数1089を逆転した数9801は、もとの数の倍数になります。 このように、逆転した数がもとの数の倍数になる4桁の数を見つけてください。 ただし、1221のように逆転しても同じ数になる場合は除外します。
    なお、 xcalcコマンド で電卓が使えますので、これで本当に倍数かどうかが確認できます。
  2. 授業内容に関して、何か希望がありましたら答えてください。

[小西ホームページ]   [目次・索引]   [次の授業]

2002年10月5日更新
konishi@twcu.ac.jp
Copyright (C) 2002 Zenjiro Konishi. All rights reserved.