プログラミングを学習中の方なら、「オブジェクト指向」という言葉を耳にしたことがあるかもしれません。
「なんだか難しそう…」
と感じる方もいるのではないでしょうか?
安心してください!
この記事では、オブジェクト指向の基礎を、初心者の方にも理解しやすいように、Javaのコード例を交えながら解説します。
現実世界とプログラムの共通点
突然ですが、あなたの周りにある「モノ」に注目してみてください。
例えば、「犬」はどうでしょう?
犬はそれぞれ、
- 名前
- 年齢
- 犬種
といった情報を持っていますよね?
そして、「吠える」「走る」「寝る」といった行動もできます。
実は、プログラムの世界でも、現実世界のモノとその特徴を同じように表現することができます。
それが、オブジェクト指向という考え方なのです。
オブジェクト指向の3つの柱
オブジェクト指向プログラミングでは、
- モノ: オブジェクト
- 情報: 属性
- 行動: メソッド
という3つの要素を使ってプログラムを組み立てていきます。
オブジェクトは、現実世界の「モノ」をプログラム上で表現したものです。
例えば、「ポチ」という名前の犬は、「犬オブジェクト」として表現できます。
属性は、オブジェクトが持つ「情報」のことです。
先ほどの犬の例で言えば、「名前」「年齢」「犬種」などが属性にあたります。
メソッドは、オブジェクトが実行できる「行動」のことです。
犬オブジェクトであれば、「吠える」「走る」「寝る」といった行動をメソッドとして定義します。
Javaコードで見てみよう!
例えば、「車」をオブジェクト指向で表現すると、以下のJavaコードのようになります。
class 車 {
// 属性: 車が持つ情報
String 色;
String メーカー;
int 速度;
// メソッド: 車ができる行動
void 発進する() {
System.out.println("車が発進しました");
this.速度 = 10; // 速度を10km/hに変更
}
void 加速する(int 加速する速度) {
this.速度 += 加速する速度; // 現在の速度に加算
System.out.println("車が加速しました。現在の速度は" + this.速度 + "km/hです");
}
void ブレーキ() {
this.速度 = 0;
System.out.println("車が停止しました");
}
}
このコードでは、「車」というオブジェクトを定義し、「色」「メーカー」「速度」といった属性と、「発進する」「加速する」「ブレーキ」といったメソッドを持たせています。
このように、オブジェクト指向を使えば、現実世界と同じようにプログラムを捉えることができるため、コードが整理され、理解しやすくなるのです。
また、プログラムの一部を変更する場合でも、その「モノ」だけに注目すれば良いので、修正や機能追加も容易になります。
まとめ
オブジェクト指向は、プログラムをより分かりやすく、修正や機能追加をしやすいものにするための強力な考え方です。
Javaを学ぶ上で、オブジェクト指向を理解することは非常に重要です。
まずは、オブジェクト、属性、メソッドという3つの要素を理解し、簡単なプログラムを作ってみるところから始めてみましょう!