Java オブジェクト指向
Javaのオブジェクト指向プログラミングの基礎を学びます。
なぜオブジェクト指向か
オブジェクト指向の本質は「変更に強い設計」を実現することです。
// 手続き型: データと処理がバラバラ
String userName = "Alice";
int userAge = 25;
boolean isAdult = userAge >= 18;
// userAgeの判定ロジックがあちこちに散らばる...
// オブジェクト指向: データと振る舞いをまとめる
User user = new User("Alice", 25);
boolean isAdult = user.isAdult();
// 判定ロジックの変更はUser内だけで済む
オブジェクト指向の価値:
- カプセル化: 内部の詳細を隠し、変更の影響を局所化
- ポリモーフィズム: 同じインターフェースで異なる実装を扱う(依存関係の逆転)
- 責務の分離: 各クラスが明確な役割を持つ
よくある誤解: 「現実世界のモノをそのままモデル化する」という説明がありますが、これは正確ではありません。現実世界を忠実に模倣すると、むしろ悪い設計になることが多いです。オブジェクト指向は「ソフトウェアの変更容易性」を高めるための技術です。