Report#5


課題 Report#5
各自オリジナルのサンプルプログラム(全ての講義内容を含んだ、1つのコード)を作成し考察せよ。

[オリジナルプログラム]

class Hakubutukan{
int nyujoryo= 1000;
String model;
void Disp(String message) {
System.out.println(message);
}
}

class Kingaku{
public static void main(String args[]){
int a; Hakubutukan, kougakubu, tyuutoubu, basudai

/*オブジェクトを作成*/
koutoubu = new Hakubutu();
tyuutoubu = new Hakubutu();
basudai = new Hakubutu();

koutoubu.model = "高校生";
tyuutoubu.model = "中学生";
basu.model = バス;
basu.nyuujoryo = 500;

/*オブジェクトのメソッドDispを呼ぶ*/
tyuutoubu.Disp(tyuutoubu.model + "の入場料は" + tyuutoubu.nyujoryo + "円です");
a = koutoubu.nyujoryo + 300;
koutoubu.Disp(koutoubu.model + "の入場料は" + a + "円です");
basudai.Disp(basu.model + "の料金は" + basu.nyujoryo + "円です");
}
}



[実行結果]

中学生の入場料は1000円です
高校生の入場料は1300円です
バスの料金は500円です


[考察]

・オリジナルプログラムについて
まずHakubutukanのクラスを定義し変数 nyujoryo に1000を代入します。そしてメソッドDispを定義します。
次に のオブジェクトを生成します。(上のオブジェクト生成参照)
生成したオブジェクトの中の Disp にそれぞれ"学生" "一般" "祝日" の引数をわたし
オブジェクト ippan の nyujoryo だけには1200を代入します。
そうすることで nyujoryo の値を ippan の場合のみ1200とする事ができます。
最後に3つの生成したオブジェクトのメソッド Disp を呼び実行します。

・クラス
クラスとはオブジェクト作成の基盤となるテンプレートの事でオブジェクトを生成する雛形です。
クラスには変数、メソッド、コンストラクタという3種類のメンバがあります。
変数はクラスの状態を表します。メソッドはクラスで定義された動作を構成するロジックを提供します。
コンストラクタはクラスの新しいインスタンスの状態を初期化します。

・メソッド
本質的にはプログラムステートメントの集合体で動作や処理内容を定義したものです。
メソッドはクラスの一部として存在します。

・オブジェクト
状態と動作の両方を定義する記憶領域の事です。
オブジェクトの生成と初期化
クラス名 オブジェクト変数 = newクラス名();

・ローカル変数とクラス変数
メソッド内で宣言した変数をローカル変数と言います。
ローカル変数はそれを宣言したメソッド内でしか認識されずそのメソッド内でしかアクセスできません。
クラス変数はローカル変数とは逆でメソッド内の外部で宣言した変数です。