ある程度言語の知識がある人。Javaの知識は問わない。
Javaアプレットによるシューティングゲーム作成を通して、オブジェクト指向の考え方を学ぶ。
Javaの開発環境です。SUNのサイト(http://java.sun.com/j2se/1.4/ja/)でSDKをダウンロードし、インストールしておいてください。WindowsXPの人はJREのインストールも必要です。
Windows標準のメモ帳でも、秀丸でもTeraPadでも自分の使いやすいテキストエディタを用意してください。
Javaとは、オブジェクト指向を採用したプログラミング言語のひとつです。一度プログラムを作成してしまえば、コンピュータの機種を選ばずに動くという特徴があります。また、ネットワークに強く、最近はサーバサイドのJavaが主流になってきています。
オブジェクト指向プログラミングとは、オブジェクトを使い、オブジェクト同士のやり取りによってプログラムを組んでいくプログラミング手法のことを言います。
オブジェクトとは直訳すると「モノ」のことです。シューティングゲームを例にすると「自機」「敵」「弾」「アイテム」などがオブジェクトになります。オブジェクトはそれぞれ独自の属性と動作を持ちます。属性のことをフィールドと言い、動作のことをメソッドと言います。
クラスとはオブジェクトの設計図みたいなものです。Javaでオブジェクト指向プログラミングを行う際には、まずクラスを定義し、そこにフィールドやメソッドを記述します。そしてそのクラスの設計図にそってオブジェクトを生成するのです。ひとつのクラスからは複数のオブジェクトを生成することができます。クラスは実体がなく、オブジェクトを生成してはじめて実体ができます。
Java言語ではclassというキーワードによってクラスを定義し、クラスからオブジェクトを生成するにはnew演算子を使います。
継承とは複数のオブジェクトが共通のフィールドやメソッドを持っているとき、それらを抽出して親クラスとして定義し、子クラスはその親クラスの機能を受け継ぐことを言います。親クラスのことをスーパークラス、子クラスのことをサブクラスと言います。
例えば、自機・敵・弾クラスで共通な部分である「位置」「大きさ」などのフィールドや「移動する」「当たり判定を行う」などのメソッドをスーパークラスに記述し、自機クラスの「弾を撃つ」・敵クラスの「自機を追尾する」などのそれぞれのオブジェクトで独自の機能をサブクラスに記述します。
Java言語ではextendsというキーワードによって継承を記述します。
Javaではフィールド・メソッド・クラスのアクセスを制限することができます。アクセス修飾子による制限の種類は以下の通りです。
| 修飾子 | フィールド・メソッド | クラス |
|---|---|---|
| public | どこからでも参照できる | どこからでも参照できる |
| なし | 同じパッケージ内からのみ参照できる | 同じパッケージ内からのみ参照できる |
| protected | 同じパッケージ内、またはそのサブクラスから参照できる | 使用不可 |
| private | 同じクラス内でのみ参照できる | 使用不可 |