• ベストアンサー

カプセル化の利点

カプセル化をすることによって便利になること、利点を教えてください。 よろしくお願いします。

  • Java
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • buriburi3
  • ベストアンサー率44% (353/792)
回答No.3

プログラムサイズが小さかったり一人で作っていると利点を実感しにくいですが、大勢で作っている場合や、作った本人にも全体が見通せないほど巨大になった場合、作った本人も詳細を忘れた頃に改造・拡張する必要が出来た場合等には実感できると思います。 ・オブジェクト間の結合を弱めクラスの流用・継承・変更がしやすくなります。 ・変更による影響範囲を限定、もしくは影響が無い事の確認が容易になります。 ・製作意図とは違う場所や違う意図で値の設定・変更を行ってしまうミスを防げます。

その他の回答 (2)

  • HarukaV49
  • ベストアンサー率53% (48/89)
回答No.2

変数をカプセル化する最も簡単と思われる例を上げてみます。 以下のコードは、身長を保持(設定/取得)するためのクラスです。 public class Tall() {   private double tall; //カプセルかされた変数      public Tall() {   }      public getCentimeters() {     return tall / 10;   }   public getMillimeters() {     return tall;   }   public getFeets() {     return tall / 304.8;   }      public setCentimeters( double tall ) {     this.tall = tall * 10;   }   public setMillimeters( double tall ) {     this.tall = tall;   }   public setFeets( double tall ) {     this.tall = tall * 304.8;   } } 内部的には、身長はミリメートル単位で保持されていますが 内部状態を全く意識することなく、フィートで設定して、 センチメートルで取り出すといったことが可能になります。 これが、ひとつの利点です。 また、身長が負の値になったりすることはありえませんが、 tallの double型変数がパブリックで宣言されていると、 tall = -170 といった非現実的な値も設定できてしまいます。 しかし、前記のコードのsetCentimeter()メソッドを   public setCentimeters( double tall ) {     if( tall < 0 ) throw new Error();     this.tall = tall * 10;   } という風に適当なエラーを送出するように設定することで 不自然な値自体を設定できないようにすることが可能になります。 これが、ふたつめの利点です。

  • oguraion
  • ベストアンサー率14% (9/63)
回答No.1

ウルトラセブンのカプセル怪獣は、弱いが時間を稼げ、 やられそうになるとカプセルに戻せます。

関連するQ&A

  • カプセル剤について?

    硬カプセル剤の空容器て売っているのですか? 自分でウコンを粉末にしたのですが、 持ち運びに便利なので使用したいのです。 オブラートでは溶けそうだし、 ばらけそうだし・・・。 他にいい方法があれば教えて下さい?

  • カプセル薬の飲み方

    うちの祖母は抗がん剤としてカプセルの薬を飲んでいるのですが、カプセルが大きすぎて飲み込むのが非常に辛い様子です。カプセルから粉薬だけを取り出して飲めばと言うと、「薬がきついからカプセルに入ってるんや。直接飲んだら悪影響があるに違いない」といいます。本当にそうなんでしょうか?また、カプセルを分解する以外に解決する良い方法はありますか?嚥下障害の方などはどうやって薬を飲んでいるのでしょうか?教えてください。

  • カプセルホテルは今

     30年くらいまえたぶんバブルのころカプセルホテルが有ったの  ですが今もありますか?なんかの試合とかナイターとか連続で  見に行くとき便利化と?教えてください。

  • タイムカプセルを埋めたいのですが

    学校でタイムカプセルを埋めるのですが、全くの初心者なので全然分かりません。 タイムカプセルを埋めたことがある方はタイムカプセルを埋める時の注意点などを教えてください。

  • VPNのカプセル化について

    VPNのカプセル化について VPNのカプセル化は何のために行っているのでしょうか? 暗号化と何が違うのでしょうか? よろしくお願いします。

  • iphone6の利点を教えてください。

    iphone4からSoftbankのiphone6に機種変更をしようと考えていますが、画面が大きい、カメラ画像が綺麗、音がいいとか在り来たりの内容ならちょっと躊躇してしまいます。 こんなに便利等の利点を教えていただけませんでしょうか?

  • 酸素カプセル

    酸素カプセル 整骨院でダイエットに効果があるといううことで 酸素カプセルに10回程入りましたがあまり効果がありません 血液もサラサラになるということですが本当でしょうか 酸素カプセルの効能と副作用を詳しく教えてください

  • 黒いガチャガチャのカプセルありませんか?

    http://dai4.com/shop/A188/tzjb4Fhsh/syoinfo/2162 のような黒い空カプセルを探しています。 業者さん曰く『サンプルはお届けできない』ということなので、ガチャガチャで手に入れようと思っています。 秋葉原で探してみたのですが、クローズのガチャガチャで黒・トーメイの組み合わせがあったのですが、黒・黒は探せませんでした。 今現在、都内近郊で黒いカプセルで売っている販売機があったら教えてください。中身・大きさは問いません。 よろしくお願いいたします。

  • suicaの利点とは?

    そもそもsuicaの利点とは何でしょう?いちいちキップを買わなくてもいいと言う点や対応店でのショッピングができるというのはわかるのですが、それ以外のメリットって何があるのでしょうか?滅多に電車に乗りませんが、出張時などでカードを持ってれば便利なのかなと思いました。

  • タイムカプセル埋めたい

    公園にタイムカプセルを埋めるのは、違法ですか?? 岡山県内にタイムカプセルをうめようとしているのですが、不法投棄や、国有地を荒らすことになり、逮捕されますか?? また、自分の敷地で はないところにタイムカプセルを埋めたことがあるかたがいらっしゃれば、どんなところに埋めたか教えて頂きたいです。

専門家に質問してみよう