クラス

クラスはオブジェクトの状態 と操作 (動作)をサポートする。

オブジェクトの状態は属性 の集まりとして表される。

オブジェクトの操作(動作)はメソッド で記述される。

クラス図

UMLでクラスは３段に分かれた長方形で表す

１段目はクラス名

２段目は属性

３段目は操作

クラスの定義

クラスの記述(Javaプログラム)は次の項目で構成される。 ５つの項目があるが、必要なものだけ記述すればよい。

修飾子 class クラス名 { static変数の宣言 属性(変数)の宣言 コンストラクタの定義 普通のメソッドの定義 staticメソッドの定義 }

クラス図とJavaプログラムの対応

属性

static変数の宣言 (前回解説)

属性の宣言 (前回解説)

動作

コンストラクタの定義 (今回解説 )

普通のメソッドの定義 (今回解説 )

staticメソッドの定義

例

public class Item
{
String name;
int price;
public static void main( String[] args)
{
...
}
}

演習

次を行いなさい。

クラス名は Item , ファイル名は Item.java とすること。

変数名(名前,価格)が日本語で書かれているが、アルファベットに直すこと。

値(おにぎり,お茶,...)は日本語でも英語でもよい。

a,b,c,d はmainメソッド内のローカル変数とする。

正しく行われていることを確認するためのprint文を必要に応じて挿入すること。

(１) 図の状態になるプログラムを書きなさい。

(２) 実行の途中の時点で(１)の状態になり、そののち次の状態になるプログラムを書きなさい。

注意

代入文の個数が最小となるようすること。

ローカル変数は a,b,c,d の４つしか使わないこと。

変数の内容は？

変数a,b,cには何が入っているのでしょうか。

上のプログラムの表示部分を次のように変えて実行してみました。

System. out. println( a);
System. out. println( b);
System. out. println( c);

実行結果はこうなりました。

値は

クラス名＠アドレス

の形式で表示されています。