Modo semplice per comprendere incapsulamento e astrazione

Apprendimento dei concetti di OOP particolarmente interessati a comprendere in profondità l’astrazione e l’incapsulamento.

Controllato già sotto

Astrazione VS Informazioni Nascondere incapsulamento VS.

differenza tra astrazione e incapsulamento?

Ho trovato molto difficile capire questi concetti senza un esempio di codice class / codice reale e semplice.

Uno dei miei colleghi ha detto che l’astrazione non è altro che la creazione di una class astratta e di una class normale che protegge la sua variabile membro con scope è chiamata Encapsulation.

C’è un modo semplice per capire e aiutare gli altri a capire cosa sono esattamente, piuttosto che ripetere il di sotto?

L’astrazione e l’incapsulamento sono concetti complementari: l’astrazione si concentra sul comportamento osservabile di un object … l’incapsulamento si concentra sull’implementazione che dà origine a questo comportamento … l’incapsulamento è spesso ottenuto attraverso l’occultamento dell’informazione, che è il processo di hide tutti i segreti dell’object che non contribuiscono alle sue caratteristiche essenziali.