Java は,インターネットを意識して作られた言語であり,インターネットの 上でのプログラムの動作環境といってもよい。アプレットとして作られたプロ グラムは,ブラウザの中でダウンロードし実行することが可能だし,サーブレッ トを利用すれば,Web のコンテンツの作成にも利用できる。携帯電話などでの 利用も考えられており,その応用はますます広がっていくと思う。また,言語 自体よく洗練されたオブジェクト指向言語であり,最初に学ぶプログラミング 言語として適している。
本書は初心者を想定して書かれている。しかし,言語を紹介してサンプルを動 かしてみることを目標にしているのではない。本書で勉強することにより,本 当に使えるようになること,つまり,自分の研究,情報発信,趣味,娯楽など に必要となるプログラムを,クラスライブラリの API の仕様書を Web ブラウ ザで見るだけで実際に書けるようになることを目指している。
そのためには,初めて学ぶ人に理解しやすい順を追った説明と,リファレンス としても使える完全な記述の両方が必要である。その両者を提供するために, 傍注のついた,このようなスタイルの本とした。本文の流れに沿って読めば Java のエッセンスが理解できるようにし,傍注の補足説明は実際のプログラ ミングで必要になる厳密さを補ったり,逆に,本文では言葉足らずで初心者に は理解しにくい部分を補ったりするように考慮した。
本書前半(1章から9章)は,オブジェクト指向やマルチスレッドの概念を習得 することを目指している。本書のサポートページ(*)
http://kyoritsu-pub.topica.ne.jp/service/service.html#javabookで提供しているタートルグラフィックスのライブラリを利用し てプログラムを組みながら学習をすすめていく。タートルグラフィックスは, オブジェクト指向やマルチスレッドの概念を説明する大変いい教材である。ま た,ゼロからプログラムを組むのではなく既存のクラスを利用することから始 めるので,概念の導入が容易になっている。後半は、グラフィカルユーザイン ターフェース,アプレット,データ入出力,ネットワークといったJavaが提供 するクラスを使って、``自分の''プログラムを書くことを学ぶ。
本書は,読み物として読むだけでも十分理解できる,飽きのこないものを目指し た。しかし,できるだけサポートページからプログラムをダウンロードし,例題 を実行して,演習問題のプログラムを作成しながら勉強を進めて頂きたい。本書 は,サポートページからダウンロードしてきたファイルを展開したディレクトリ において,例題のプログラムをコンパイル/実行したり,練習問題のプログラム を作成したりしながら勉強を進めていけるように構成されている。練習問題をす べて解いた後のディレクトリ構造もサポートページで公開しているので,参考に されたい。
本書で説明する Java 言語のバージョンは,JavaTM 2 である。すべてのプログ ラムは,JavaTM 2 SDK version 1.3 で動作確認を行っている。
本書を教科書として利用する場合,内容を選びながら講義を行えば,週1時間 講義,1時間演習で半期で終わるように,丁寧に講義を行い最後に本格的なプ ログラムの製作を行うのなら通年で終わるように想定している。
本書で利用するタートルグラフィックのプログラムは,慶応義塾大学環境情報 学部の萩野達也助教授の作成されたプログラムをベースに改変を施したもので ある。快く使わせてくださった氏に感謝している。また,楊寧峰さんにはプロ グラムのチェックをして頂いた。ウサギの絵は和田由可さんと福住英美子さん の作品である。また、本書の図ならびにイラストは松田さらさんに描いてもらっ た。この場をお借りして感謝する。最後に,本書の企画を受け入れ,サポート して下さった共立出版の羽生田洋子さんに感謝する。
2000年9月
立木秀樹
有賀妙子