人見知りで日本一周、未経験でエンジニアになった人の成長記録

新米学生エンジニアが学んだことを気ままにアウトプットしていくことで誰かのためになったらなー

オブジェクト指向におけるクラス(カプセル化)の役割とメリット

クラス(カプセル化)とは

クラスには、オブジェクトを作成する時のデータやメソッドを定義してあって、つまり、クラスとはオブジェクトの設計図です。

クラスclass)は、クラスベースオブジェクト指向においてオブジェクトの設計図にあたるもの。抽象データ型の一つ。クラスから生成したオブジェクトのことをインスタンスという。

クラスには、インスタンスの保持するデータメンバ変数フィールドUMLでは「属性」ともいう))と操作(メソッドメンバ関数)が記述される。アクセス範囲(public、private、protectedなど)や可変かどうか(final、 constantなど)等についても記述されている。[要出典]

クラスは、継承ポリモーフィズムカプセル化などの、オブジェクト指向プログラミングにおける重要な概念を実現する強力な手段である。

クラス (コンピュータ) - Wikipedia

クラス(カプセル化)のメリット

クラスの役割は、「まとめる・隠す・いっぱいつくる」の3つの役割があります。

「まとめる」のメリット

  • 部品の数が減る
  • メソッド( サブルーチン)の名前づけが楽になる
  • メソッド( サブルーチン)が探しやすくなる

「隠す」のメリット

  • クラスに定義した変数とメソッドを、他のクラスから「 隠す」ことができる→privateを使用
  • プログラムの保守性悪化の原因となるグローバル変数 を使わずにプログラムを書くことが可能になる

「いっぱいつくる」のメリット

  • 一度クラスとして定義すると、実行時にそこからいくつ でもインスタンスを作成可能
  • ファイル・文字列・顧客情報など、同種の情報を複数 同時に扱う処理であっても、そのクラス内部のロジック をシンプルにできる→インスタンスを作成すればいい