カプセル化と抽象化の違い 質問する

カプセル化と抽象化の違い 質問する

今日は面接がありました。オブジェクト指向、の違いについてカプセル化抽象化?

私は自分の知識に基づいて答えましたカプセル化基本的にデータメンバーとメンバー関数を1つのユニットにバインドします。クラス。 一方抽象化基本的には、実装の複雑さを隠し、ユーザーに簡単にアクセスできるようにすることです。彼女は私の答えで大丈夫だろうと思いました。しかし、彼女は、両方の目的が情報を隠すことであるならば、これら 2 つの実際の違いは何かと尋ねました。私は彼女に何も答えることができませんでした。

この質問をする前に、StackOverFlowでこの2つの違いについて他のスレッドを読みました。オブジェクト指向のコンセプトを理解しています。しかし、面接官を説得できる立場にありません。

誰か最も簡単な例でそれを正当化できますか?

ベストアンサー1

カプセル化頻繁に変更される可能性のある変数や実装を隠す授業中部外者が直接アクセスするのを防ぐためです。部外者は getter メソッドと setter メソッドを介してアクセスする必要があります。

抽象化何かを隠すためにも使われますが、上級(クラス、インターフェース)抽象クラス (またはインターフェース) を使用するクライアントは、それが何であったかは気にせず、何ができるかだけを知る必要があります。

おすすめ記事