オブジェクト指向の三代要素が、クラス(カプセル化), ポリモーフィズム, 継承の三つ
クラスの対になるのがインスタンス。
クラス → 「同種のものの集まり」
インスタンス → 「具体的なもの」
// 犬クラスの定義
class Dog {
String name;
Dog (String name){
this.name = name;
}
String cry(){
return "ワン!";
}
}
cry()
をメソッドと言い、このメソッドを呼び出すことをメッセージパッシングというポリモーフィズムとはいろいろな形に変わるという意味で、
「類似したクラスに対するメッセージの送り方を共通にする仕組み」
継承は「物の種類の共通点と相違点を体系的に整理する仕組み」
オブジェクト指向では全体集合をスーパクラス
部分集合をサブクラスという
犬を例にすると、クラス → 犬, インスタンス → ポチ になる
しかし、犬が生まれるのはメス犬が出産するからで、犬クラスから生まれるわけではない
オブジェクト指向と現実世界では、クラスの位置付けが違う
オブジェクト指向では