オブジェクト指向の三代要素が、クラス(カプセル化), ポリモーフィズム, 継承の三つ

クラス(カプセル化)

クラスの対になるのがインスタンス

クラス → 「同種のものの集まり」

インスタンス → 「具体的なもの」

// 犬クラスの定義
class Dog {
	String name;
	Dog (String name){
		this.name = name;
	}
	String cry(){
		return "ワン!";
	}
}

ポリモーフィズム

ポリモーフィズムとはいろいろな形に変わるという意味で、

類似したクラスに対するメッセージの送り方を共通にする仕組み

継承

継承は「物の種類の共通点と相違点を体系的に整理する仕組み

オブジェクト指向では全体集合をスーパクラス

部分集合をサブクラスという

オブジェクト指向と現実世界は似て非なるもの

犬を例にすると、クラス → 犬, インスタンス → ポチ になる

しかし、犬が生まれるのはメス犬が出産するからで、犬クラスから生まれるわけではない

オブジェクト指向と現実世界では、クラスの位置付けが違う

オブジェクト指向では