\r\n\r\n

エンキャプシュレーションとちゅうしょうがいねんの違い

カプセル化と抽象化は、OOP(オブジェクト指向)言語において、異なるが関連する2つの概念である。カプセル化とは、データと振る舞いを1つの実体として結合する概念です。一方、抽象化とは、実体の振る舞いや実装の仕方を表現することであり...

カプセル化と抽象化

カプセル化と抽象化は、OOP(オブジェクト指向プログラミング)言語において、異なるが関連する2つの概念である。カプセル化とは、データと振る舞いを1つの実体として結合する概念です。一方、抽象化とは、エンティティの振る舞いや実装の仕方を表現することである。

カプセル化とは?

カプセル化とは、データとそれを操作する操作を1つの実体にまとめることです。これは事実上、データにアクセスするためには、あらかじめ定義された特定のメソッドを使用する必要があることを意味する。つまり、カプセル化されたデータには直接アクセスできない。これにより、ユーザーが直接データにアクセスして思い通りに変更することができないため、データの完全性が確保される。ユーザーは、ユーザーが一般に公開されているメソッドを通じてのみ、データ値にアクセスまたは設定することができます。これらの方法は、通常、適切な形式のデータのみがフィールドに入ることができるように、データの検証を行います**。そのため、カプセル化のメリットは3つあります。カプセル化によって、プログラマはクラスのフィールドを読み取り専用または書き込み専用にすることができます。第二に、クラスはそのフィールドに格納された内容を完全に制御することができます。最後に、クラスのユーザーは、そのデータがどのように保存されるかについて心配する必要はありません。Javaでは、プログラマはすべてのインスタンス変数をプライベートと宣言し、プライベートフィールドにアクセスし、変更するためのgetおよびsetメソッド(パブリックなもの)を提供することができます。

抽象化とは?

抽象化とは、表現の詳細と実装の詳細を切り離すことです。その分、細部が複雑になっているので、開発者は安心しています。その代わり、プログラマはエンティティの表現や振る舞いの詳細に注目することができる。簡単に言えば、抽象化とは、実体がどのように使われるかに関わるものであり、実体がどのように実装されるかに関わるものではない。抽象化とは、基本的に実装の詳細を隠すことであり、たとえ実装方法が時間の経過とともに変化しても、プログラマはそれが自分のプログラムにどのような影響を与えるかを心配する必要がないようにすることである。システムはいくつかのレベルに抽象化することができる。例えば、抽象度が低いとハードウェアの詳細が表示され、抽象度が高いとエンティティのビジネスロジックのみが表示されます。抽象化という言葉は、実体とプロセスの両方を指す言葉として使われることがあり、混乱を招くことがある。プロセスとしての抽象化とは、ある項目または項目の集合について、必要な詳細を抽出し、重要でない詳細を無視することであり、実体としての抽象化とは、基本的な詳細のみを持つ実体のモデルまたはビューを意味する。Javaでは、プログラマはabstractというキーワードを使って、クラスを抽象的な存在として宣言することができる。これは、現実世界の実体の基本的な定義特性を表すものである。

カプセル化と抽象化の違いは何ですか?

  • 2020-10-23 12:49 に公開
  • 閲覧 ( 20 )
  • 分類:IT

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ