クラスとインスタンスの関係性
① 各オブジェクトが負うべき責務を考え、「属性」「操作」の種類と内容を定義する
② 各オブジェクトを仮想世界に生み出し、動かす
※ オブジェクトは定義できないので、
代わりに
オブジェクトの設計図であるクラスを定義→そのクラスからオブジェクトを生み出すという手順を踏んで作成する
用語による区別
「クラス」・・・オブジェクトを作る前の金型
「インスタンス」・・・その金型から仮想世界で活動する実体
「インスタンス化」・・・金型であるクラスからインスタンスを生成する行為
ただインスタンス(実体)を生成してもそのままではインスタンスは動かない
※ ただmainメソッドを作ろうとしても、
mainメソッド単体では作れない
→そこで、Mainなどの適当な名前で独自に新しいクラスを作り、その中にmainメソッドを作る
ex.
指示クラス
class Main{ //Mainクラス
public static void main(string[ ] args){ //mainメソッド
//(以下の内容をJavaで記述)
//勇者の実体を仮想世界で作る
//キノコの実体を仮想世界で作る
//勇者戦え
//キノコ逃げろ
}
勇者の実体の金型
class Hero{
・
キノコの実体の金型
class Matango{
・
Mainクラスのmainメソッド起動
>java Main
〈まとめ〉
プログラムを作る場合は2種類作成する
登場人物クラス
神様クラス(登場人物に指示を送るクラス)
↑このクラスにはmainメソッド(実際の指示の記述)を含んでいる