プログラミング 第9回

プログラミング 第9回
オブジェクト指向
[email protected]
プログラミング第9回
1
クラスとインスタンス
• オブジェクト
– メソッドとフィールド
– メッセージのやり取りをする自立した主体。
– 状態をもつ。受け取ったメッセージに反応する。
• クラス=設計図
– 特定の動作パターン(メソッドの集まり)を共有するオ
ブジェクトの共通の設計図
• インスタンス=設計図に基づいて作られたオブ
ジェクト
– クラスに属する個体
– クラスで規定された通りの動作をするオブジェクト
プログラミング第9回
2
インスタンスの初期化、参照
• 初期化にConstructor を使う.
• インスタンスの生成は
– new ClassA(引数があればここに);
• 生成されたインスタンスをその場だけでなく,後
で参照する必要があるなら(大抵そうだが),次
のようにする。
– ClassA var = new ClassA(...);
– 以後, var.someMethod(...); のようにメッセージを送る
ことができる。
プログラミング第9回
3
Constructor
•
•
•
•
特別なメソッド
クラス名と同じ名前
戻り値の型は void でも何でもない。
現在のインスタンスはthisで表す。
プログラミング第9回
4
実例で
Kamoku.java (List 10-2, p.243)(1)
public class Kamoku {
String name; //科目名
int mark;
//点数
//Constructor
public Kamoku(String name, int mark){
this.name = name;
this.mark = mark;
}
プログラミング第9回
5
Kamoku.java (2)
//String Representation
public String toString(){
return name+"は"+mark+"点";
}
}
プログラミング第9回
6
インスタンス生成の例
a
Kamoku
a=new Kamoku(“国語”, 63);
Kamokuのインスタンス
name
国語
mark
63
プログラミング第9回
7
課題
• 問題10-1,2,3,4,5
プログラミング第9回
8