オブジェクト指向の基本概念
名称 | 内容 | 例 |
---|---|---|
オブジェクト | あらゆる『モノ』。属性・操作等の特性を持つ オブジェクト指向では『モノ全般の総称』を指す (内容を論ずる場合クラスorインスタンスを使う) |
モノ:車、属性:車名、操作:走る |
クラス | オブジェクトを抽象化したひな型 | 顧客クラス:名前、住所、電話番号 |
インスタンス | 『クラスから生成される』オブジェクト。 具象化実体 |
特定の具体的顧客 →名前:XXXX、住所:YYYY、電話番号:ZZZZ |
メッセージ | オブジェクト同士で送受信するもの | 人→テレビ(リモコン等) メッセージによるテレビ操作起動: 電源ON、チャンネル変更 |
カプセル化 | オブジェクト外部から「可視性」を満たしていないデータ(属性)やプロセス(操作)を隠蔽する | 車の運転手は「走る」「曲がる」「止まる」等のみ可能で 公開されていない内部機器のデータやプロセスは知り得ない |
継承 | スーパークラスの特性をサブクラスが受け継ぐ | サイトの一般利用者(スーパークラス)を継承して会員(サブクラス)を作成し 会員は一般利用者のクラス処理+注文処理が出来る |
ポリモフィズム | 同名操作の内容が、オブジェクト毎に異なる | 「演奏する」という操作は ピアニストとヴァイオリニストで異なる |
オーバーライド | スーパークラスから継承した特性の内容をサブクラスで書き換える | サイトの一般会員は購入時ポイント+Xだが、プレミアム会員はポイント+Yに増やす |