Class(クラス)
●クラスとは?
クラスとは、オブジェクトの集まりです。このオブジェクト同士がメッセージを送信し合うことにより、計算が実行されます。オブジェクトとは、状態や振る舞いを持つ概念です。要するに、定義した値を持ち、実際に計算をすることが出来るって概念でしょうか。オブジェクトの状態(値)を持つ変数をメンバー変数、動作をするものがメソッドです。
●クラスの概要
クラスのプログラムの概要は以下の通りです。
修飾子 class クラス名{
//メンバ変数(データを保持する)
修飾子 型 変数名 = 値;
//コンストラクタ
修飾子 クラス名(){
インスタンス化;
}
//メソッド
修飾子 戻り値型 メソッド名(メソッド引数){
実行プログラム;
}
}
先ずクラスを作成する必要があります。
メンバ変数では、オブジェクトに保持する値を設定します。
コンストラクタでは、クラスをインスタンス化する時に、最初に実行されます。
メソッドはメンバ変数を元に実行するプログラムを記述します。
●お金の出し入れを行うプログラム
実際に貯金をするプログラムから説明します。
class Tyokin
{
//メンバ変数はお金
int money;
//コンストラクタ(お金の初期値を0にする)
public Tyokin(){
money = 0;
System.out.println("お金が"+money+"円に初期設定されました。");
}
//お金を引き出す動作を定義したメソッド
void orosu(int hikidashi){
money = money - hikidashi;
System.out.println(money+"円引き出しました。");
}
//お金を貯める動作を定義したメソッド
void tameru(int tyokin){
money = money + tyokin;
System.out.println(money+"円貯金しました。");
}
//お金の残高を表示するメソッド
void hyouzi(){
System.out.println("現在のお金は"+money+"円です。");
}
//メインメソッド
public static void main(String args[]){
//お金を管理するインスタンスを作成
Tyokin make_money = new Tyokin();
//お金を貯金
make_money.tameru(1000);
//現在の貯金残高を表示
make_money.hyouzi();
//お金を引き出す
make_money.orosu(300);
//現在の貯金残高を表示
make_money.hyouzi();
}
}
このクラスは、お金を貯金、引き落としを行うプログラムです。
public static void main(String args[]){
では、始めに実行されるプログラムです。
この次に
//お金を管理するインスタンスを作成
Tyokin make_money = new Tyokin();
とありますが、これは、Tyokinクラスのインスタンスを作成します。これによりmake_moneyはインスタンス化され、Tyokinクラスのメソッドを操作できます。
状態となります。
次に、インスタンス化されたmake_moneyが、コンストラクタを実行します。
//コンストラクタ(お金の初期値を0にする)
public Tyokin(){
money = 0;
System.out.println("お金が"+money+"円に初期設定されました。");
}
クラスTyokinのコンストラクタはこの箇所です。
ここでは、make_moneyが持つ変数moneyを0にします。
の状態となります。
//お金を貯金
make_money.tameru(1000);
次に進むと、Tyokinのクラスのメソッドであるtameruに引数1000が実行されます。
tameruのメソッドを見てみましょう。
//お金を貯める動作を定義したメソッド
void tameru(int tyokin){
money = money + tyokin;
System.out.println(money+"円貯金しました。");
}
ここからお金が引数分だけ増加します。
の状態となります。
同様にしてクラスTyokinのメソッドがインスタンス化されたmake_moneyにより実行されていきます。
実行結果です。
D:\private\java>javac Tyokin.java
D:\private\java>java Tyokin
お金が0円に初期設定されました。
1000円貯金しました。
現在のお金は1000円です。
700円引き出しました。
現在のお金は700円です。
戻る
|