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