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

コンピュータIIB(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.2.7 教室外の学習方法
1.3 履修者の抽選
1.4 プログラミング言語Java
1.4.1 Javaとは
1.4.2 情報処理センターのJava環境
1.4.3 自宅で自習するには
1.5 プログラムの動かし方
1.6 プログラミングの準備
1.6.1 全体の手順
1.6.2 プログラムの入力と保存
1.6.3 コンパイル
1.6.4 実行
1.6.5 プログラムのエラー
1.7 アンケート1
1.8 参考文献
javacコマンド  javaコマンド  SDK  コンパイル  デバッグ  バイトコード 

1.1 教員の紹介

名前
小西 善二郎(こにし ぜんじろう)
肩書き
東京女子大学文理学部非常勤講師
連絡先
konishi@twcu.ac.jp

1.2 シラバス

1.2.1 授業の目標・概要

本講義では、Java言語を用いてプログラミングの基本を学ぶ。 プログラムの制御構造とデータ型を理解することが目標となる。 また、アプレット、参照、オブジェクトなどについても触れる。

1.2.2 授業のスケジュール

  1. ガイダンス
  2. アプレット
  3. 宣言文と代入文
  4. 条件文
  5. 繰返し文
  6. 配列
  7. 手続きと関数
  8. レコード
  9. 参照
  10. オブジェクト
  11. よく使われるクラス
  12. より高度な話題

1.2.3 教材(テキスト)

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

1.2.4 教材(参考書等)

授業内容に応じて参考資料を紹介する。

1.2.5 成績評価の方法と基準

原則として毎回レポート課題を出す。 最後の授業では筆記試験を行う。 レポートの採点結果と試験の得点を総合して成績を決定する。

1.2.6 履修者への要望

レポートはすべて提出すること。

1.2.7 教室外の学習方法

レポート課題に取り組むこと。


1.3 履修者の抽選

コンピュータの台数の関係により、履修希望者が80名を越えた場合は抽選を行います。 抽選用紙には、時間割番号J202Aを記入してください。


1.4 プログラミング言語Java

1.4.1 Javaとは

Javaとは、1995年にSun Microsystems社から発表されたプログラミング言語です。 Javaは、ネットワークやGUI(Graphical User Interface)など、現代的な機能が充実しています。 特に、アプレットとよばれる、ホームページにプログラムを埋め込む技術は、Javaが一気に有名になった切っ掛けでもあります。 また、Javaは基本的にマルチプラットホームであり、一度プログラムを書けば、それはWindowsでもMac OS XでもLinuxでもSolarisでも動きます。 Javaの言語体系は比較的整理されていますので、プログラミングの入門にも適しています。

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

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

Java 2 SDKには、いくつかのバージョンがあります。 情報処理センターのシステムには、バージョン1.4.2がインストールされていますので、授業ではそれを用います。

ちなみに、Java 2はバージョン2という意味ではありません。 バージョン1.2.2以降、JavaはJava 2とよばれるようになったのです。

1.4.3 自宅で自習するには

自宅のパソコンにJava 2 SDKをインストールすれば、自宅でこの授業の自習ができます。 CD-ROM付きのJavaの本を買い、その本に従ってインストールするのが簡単です。 本を買いたくなければ、インターネット経由で入手することもできます。 例として、Windows 2000/XPが動いているPCにJava 2 SDK 1.4.2をインストールする方法を説明します。

はじめに、Java 2 SDK 1.4.2のインストール用ファイルを手に入れます。 URL

http://java.sun.com/j2se/1.4.2/ja/download.html

から「J2SE SDKのダウンロード」を選択し、使用許諾契約に問題がなければAcceptボタンをクリックし、Windows用のファイルを選択してダウンロードしてください。 ファイルの大きさは約49Mバイトです。

ここで、もしAdministratorとしてログオンしていなければ、Administratorとしてログオンし直します。

次に、ダウンロードしたファイルを実行(アイコンをダブルクリック)します。 質問に答えていきますと、ディレクトリC:\j2sdk1.4.2_(番号)が作られ、必要なファイルやディレクトリがその中に展開されます。

最後に、ディレクトリC:\j2sdk1.4.2_(番号)\binにパスを通します。 「コントロールパネル」→「システム」→「詳細」→「環境変数」と選択し、環境変数Pathの値にC:\j2sdk1.4.2_(番号)\binを追加します。 (パスが複数ある場合はセミコロンで区切ります。) これでインストールは完了です。


1.5 プログラムの動かし方

1.6 プログラミングの準備

2003年9月から、情報処理センターのシステムはSolarisからMac OS Xに変更されました。 新システムを利用するには、はじめに初期設定が必要です。 まだ設定していない人は、手元のプリント「クイックガイド」の通りに操作してください。 「クイックガイド」には、Mac OS Xの基本操作の説明もありますので、これも覚えてください。

この授業に関係するアプリケーションは次のようなものです。

表 1.1  授業に関係するアプリケーション
アプリケーション Solaris Mac OS X
端末ソフト 端末エミュレータ ターミナル
テキスト・エディタ XEmacs Jedit
ウェブ・ブラウザ Netscape Safari
メール・ソフト XEmacs + Mew Apple Mail

ここで、入力モードが日本語(メニューバーに「あ」)でしたら、これを英語(星条旗)に切り替えます。

「ターミナル」の起動の仕方は以下の通りです。

  1. DockのFinderアイコンをクリック。
  2. サイドバーの「アプリケーション」をクリック。
  3. 「TWCU」をダブルクリック。
  4. 「term」をダブルクリック。
  5. 「Shift_JIS.term」をダブルクリック。

「ターミナル」を終了するには次のようにします。

  1. exit と入力。
  2. タイトルバーの赤ボタンをクリック。
  3. メニューバーで、「ターミナル」→「ターミナルを終了」とクリック。

なお、「ターミナル」の字が小さくて読みにくい場合は、次のようにしてください。

  1. ウィンドウをクリック。
  2. メニューバーで、「フォント」→「大きく」とクリック。

Javaでプログラムを作成しますと、たくさんのファイルを扱うことになります。 そこで、授業用のディレクトリcomp2bを作り、そのディレクトリの中で作業を行うことにします。 再び「ターミナル」を起動して、以下のように入力してください。

b04a001@AsiaA1:~% mkdir comp2b
b04a001@AsiaA1:~% cd comp2b
b04a001@AsiaA1:~/comp2b%

ここで、mkdirはディレクトリを作成するコマンドです(MaKe DIRectory)。 また、cdはカレント・ディレクトリを変更するコマンドです(Change Directory)。

Jeditの起動の仕方は以下の通りです。

  1. DockのFinderアイコンをクリック。
  2. サイドバーの「アプリケーション」をクリック。
  3. 「Jedit4.0フォルダ」をダブルクリック。
  4. 「Jedit4」をダブルクリック。
  5. メニューバーで、「ファイル」→「新規」とクリック。

Jeditを終了するには次のようにします。

  1. タイトルバーの赤ボタンをクリック。
  2. メニューバーで、「Jedit4」→「Jedit4を終了」とクリック。

なお、Jeditの字が小さくて読みにくい場合は、次のようにしてください。

  1. ウィンドウをクリック。
  2. メニューバーで、「書式」→「文字サイズ」とクリック。

1.6.1 全体の手順

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

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

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

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

+-----+
|class|
|  pub| filename.java
|    S|
+-----+
   |
   |    javac filename.java
   V
+-----+
|?????|
|?????| filename.class
|?????|
+-----+
   |
   |    java filename
   V
+-------------+
|+-----------+|
||Good aftern||
||           ||
||           ||
|+-----------+|
+-------------+

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

ここで、再びJeditを起動します。 そして、次のプログラムをそっくりそのまま入力します。 アルファベットの大文字を小文字に変えたりしないでください。

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

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

新規に作成したプログラムをファイルに保存するには次のようにします。

  1. ウィンドウをクリック。
  2. メニューバーで、「ファイル」→「別名で保存...」とクリック。
  3. 「別名で保存」欄に、ファイル名(今日は GoodAfternoon.java)を入力。
  4. 「別名で保存」欄の右の三角ボタンを数回クリックし、詳細表示に変更。
  5. ホーム→「comp2b」とクリック。
  6. 「ファイル形式」メニューで「Jeditテキストのみ」を選択。
  7. 「漢字コード」メニューで「シフトJIS」を選択。
  8. 「改行コード」メニューで「CR(Mac)」を選択。
  9. 「保存」をクリック。

練習のため、タイトルバーの赤ボタンをクリックしてウィンドウを閉じます。 そして、再びこのファイルを開くことにします。

以前作成したファイルを開くには次のようにします。

  1. もしDockにJeditアイコンがなければ、上記の要領でJeditを起動。
  2. DockのJeditアイコンをクリック。
  3. メニューバーで、「ファイル」→「開く...」とクリック。
  4. ホーム→「comp2b」→ファイル名とクリック。
  5. 「開く」をクリック。

なお、更新したプログラムをファイルに保存するには次のようにします。

  1. ウィンドウをクリック。
  2. メニューバーで、「ファイル」→「保存」とクリック。

1.6.3 コンパイル

プログラムをファイルに保存しましたら、次に「ターミナル」で javacコマンド を実行します。 プログラムは GoodAfternoon.java に保存されていますので、 javac GoodAfternoon.java と入力してください。 プログラムが正確に入力できていれば、GoodAfternoon.class というファイルが生成されます。

b04a001@AsiaA1:~/comp2b% ls
GoodAfternoon.java
b04a001@AsiaA1:~/comp2b% javac GoodAfternoon.java
b04a001@AsiaA1:~/comp2b% ls
GoodAfternoon.class   GoodAfternoon.java
b04a001@AsiaA1:~/comp2b%

ここで、lsはファイルをリスト・アップするコマンドです(LiSt)。

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

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

1.6.4 実行

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

b04a001@AsiaA1:~/comp2b% java GoodAfternoon
Good afternoon!
b04a001@AsiaA1:~/comp2b%

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

1.6.5 プログラムのエラー

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

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

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

        Systemout.println("Good afternoon!");

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

b04a001@AsiaA1:~/comp2b% javac GoodAfternoon.java
GoodAfternoon.java:3: シンボルを解決できません。
シンボル: 変数 Systemout
場所    : GoodAfternoon の クラス
        Systemout.println("Good afternoon!");
        ^
エラー 1 個
b04a001@AsiaA1:~/java%

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

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


1.7 アンケート1

履修者の予備知識を確認するため、アンケートを行います。 以下の質問に答え、回答をメールで提出してください。 メールの送信には学内のコンピュータ(メール・サーバ)を用い、送信先はkonishi@twcu.ac.jpとします。 メールの本文には、学生番号、氏名、科目名、授業日(4/8)を明記してください。

  1. 次の問題が自分でプログラムを作成して解けるかどうかを答えてください。 解ける場合は、どのプログラミング言語かも答えてください。

    サイコロを2つ振って出る目の和を考えます。 最も出やすいのは7です。 実際、和が2になるのは1+1の1通り、3になるのは1+2と2+1の2通り、…、7になるのは1+6, 2+5, 3+4, 4+3, 5+2, 6+1の6通り、…、12になるのは6+6の1通り、となり、7になる組合せが最も多いからです。 では、サイコロを3つ振って出る目の和を考えた場合、最も出やすいのは何でしょうか。 コンピュータを使って計算してください。

  2. 授業内容に関して、何か希望がありましたら答えてください。

なお、メールを書くには次のようにします。

  1. DockのMailアイコンをクリック。
  2. 「新規」をクリック。
  3. 宛先、件名、および本文を入力。
  4. 「送信」をクリック。

1.8 参考文献


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

2005年4月8日更新
小西 善二郎 <konishi@twcu.ac.jp>
Copyright (C) 2005 Zenjiro Konishi. All rights reserved.