オブジェクト指向 2023年12月16日 最終更新日時 : 2024年1月6日 JavaのIT技術者 励まし隊 オブジェクト指向とは? プログラムの世界において、オブジェクト指向とは? オブジェクトに着目して作られるプログラムになります。 オブジェクトとは、何を指すのでしょうか? オブジェクト(モノ)あるいは(クラス)は処理とデータを持つことができます。 ・処理(メソッドと呼びます。) ・データ(メンバ変数と呼びます。) オブジェクトのことをクラスともいいます。 オブジェクト(クラス)をメモリ上に展開して、 使えるようにすることを インスタンス(生成)といいます。 オブジェクト指向の3大要素 ・カプセル化 ・継承 ・ポリモフィズム(多態性) カプセル化 処理(メソッド)とデータ(メンバ変数)の一つの単位である オブジェクト(クラス)にまとめることをいいます。 また、参照権限を付与することもできます。 同じオブジェクト(クラス)内からしか参照できないよう にしたり、別のオブジェクト(クラス)からでも 参照できるように制御することができます。 参照権限は以下のものがあります。 ・public(公開): →別クラスからでもアクセス可能。 ・protected(派生クラス内公開): →派生クラスからアクセス可能。 ・private(非公開): →別クラスからアクセス不可。 継承 上位クラスの機能を引き継いで、 サブクラスを作成することができます。 車クラスを例として説明します。 以下の機能があります。 ・アクセスを踏む。 ・ブレーキを踏む。 ・ハンドルを回す。 サブクラスとして、消防車を作成するとします。 以下の機能を追加します。 ・水を放水する。 ・梯子を取り出す。 ・鐘を鳴らす。 このように、上位クラスの機能を引き継いで、 サブクラスで、機能を拡張したいときに継承の機能は役に立ちます。 ポリモフィズム(多態性) 上位クラスは抽象クラス、またはインターフェースで、 抽象メソッドまたはインターフェース(未実装)で定義します。 サブクラスで実装することをポリモフィズム(多態性)といいます。 具体的な例としては、 上位クラスで「アクセスを踏む」を抽象メソッドとして未実装で定義します。 サブクラスとして、ガソリン自動車では、ガソリンを爆発させて エンジンを動かします。 一方、電気自動車では、 電気の力でモーターを動かします。 オブジェクト指向言語 オブジェクト指向言語には、以下があります。 ・C++ ・VisualC++ ・VisualC# ・Java ・Python 他にもオブジェクト指向言語はあります。 ☆まとめ☆ ソフトウェア開発などプログラム言語に携わる 職種の方、あるいはこれから目指す方には、 オブジェクト指向のスキルは必須となると考えています。 Follow me! FacebooktwitterHatenaPocketCopy