Abstrakcja a enkapsulacja

Autor: Laura McKinney
Data Utworzenia: 8 Kwiecień 2021
Data Aktualizacji: 1 Móc 2024
Anonim
OOP interview questions :- What is the difference between Abstraction and Encapsulation ?
Wideo: OOP interview questions :- What is the difference between Abstraction and Encapsulation ?

Zawartość

Abstrakcja jest procesem
gromadzenie kluczowych informacji, które będą podstawą do budowy
skomplikowany system. Hermetyzacja jest procesem znacznego rozwoju złożonego systemu
łatwiej zarządzać użytkownikiem końcowym, nie martwiąc się o jego złożoność. The
różnica między abstrakcją a enkapsulacją jest taka
abstrakcja koncentruje się na identyfikacji podstawowych elementów do budowy
system, podczas gdy enkapsulacja koncentruje się na ukrywaniu wewnętrznych złożoności systemu.


Treść: Różnica między abstrakcją a enkapsulacją

  • Wykres porównania
  • Co to jest abstrakcja?
    • Przykład
  • Co to jest enkapsulacja?
    • Przykład
  • Kluczowe różnice między abstrakcją a enkapsulacją
  • Wniosek

Wykres porównania

Podstawowy Abstrakcja Kapsułkowanie
Definicja Elementy wymagane do opracowania
system.
Kapsułkowanie to proces opracowywania złożonego systemu
Osiągnięcie Osiągnięte poprzez enkapsulację. Osiągnięty poprzez utworzenie członków
klasa jako prywatna.
Skupia się Nacisk kładziony jest na to, co należy zrobić Koncentruje się na tym, jak należy to zrobić.
Podanie Na poziomie projektowania. Podczas realizacji
poziom.
Przykłady GUI telefonu komórkowego, ma kilka ikon do kliknięcia, które są włączone
kliknij, aby wykonać określoną funkcję.
Po kliknięciu ikony
użytkownik końcowy nie ma pojęcia o szczegółach jego implementacji

Co to jest abstrakcja?

Abstrakcja jest mechanizmem wydobywania kluczowych elementów
do stworzenia systemu bez szczegółów jego wdrożenia. W
abstrakcja, musimy skoncentrować się tylko na tym, co należy zrobić, a nie na tym, jak to zrobić
musi być zrobione. Abstrakcja to proces myślowy, który rozwiązuje problemy przy projektowaniu
poziom.


Hierarchiczna klasyfikacja pomaga nam radzić sobie ze złożoną abstrakcją. Pozwala nam rozbić skomplikowany system na łatwe do zarządzania elementy i wygenerować semantykę warstwową. Co więcej, jest to uogólnienie.

Przykład

Weźmy dobry przykład samochodu, który jest stworzony z wielu podsystemów, takich jak silnik, hamulce, oświetlenie, system audio, krzesło i wiele innych. „Hamulec”, który jest podsystemem roweru, można dalej sklasyfikować jako hamulec przedniego koła i hamulec tylnego koła, ale ogólnie cały podsystem postrzegamy jako hamulce. Musimy więc zarządzać złożonym systemem za pomocą hierarchicznej klasyfikacji, która pomaga nam dowiedzieć się, jakie są kluczowe elementy, które będą wymagane do opracowania systemu.

A zatem abstrakcja uogólnia tylko to, czym są elementy
niezbędne do stworzenia systemu, to znaczy po prostu odbieranie ważnych.

Co to jest enkapsulacja?

Hermetyzacja jest ważną cechą programowania obiektowego. To mechanizm, który
wiąże kod i dane razem i chroni je przed zewnętrznymi
ingerencja. Innymi słowy, enkapsulacja ukrywa złożoność systemu,
ponieważ tutaj słowo kluczowe ukrywa dane. Jest podobny do ochronnego
opakowanie, które ukrywa kod i dane w klasie, uzyskiwane przez
inny kod zdefiniowany poza klasą oraz funkcja / metoda członka
które nie są członkami klasy.


Gdy kod i dane, które działają
na tych danych są połączone w klasie, a następnie tworzone są obiekty tej klasy.
Dostęp do elementów przedmiotu jest ograniczony przez dobrze zdefiniowany interfejs
znany jako specyfikator dostępu. Istnieją trzy rodzaje dostępu
specyfikatory w Javie i C ++ Public, Private, Secure.

Hermetyzację uzyskuje się zwłaszcza poprzez wykonanie kodu
oraz dane działające na danych jako prywatne. Prywatni członkowie klasy nie mogą uzyskać dostępu ze zdefiniowanego kodu
poza klasą. Pomaga zapobiegać niewłaściwemu wykorzystaniu danych, a jednocześnie ukrywa złożoność
kodu.

Przykład

Weźmy przykład telefonu komórkowego. W telefonie komórkowym ty
może wykonywać wiele funkcji, takich jak klikanie obrazu, nagrywanie wideo / audio,
ing, dostęp do sieci i wiele więcej. Uważasz je za
cechy telefonu komórkowego. Ale użytkownik końcowy nie musi
zrozumieć ich złożoność wewnętrzną przed użyciem
programy, ani nie musisz zmieniać funkcjonalności żadnej z funkcji.

W ten sposób enkapsulacja ukrywa złożoność i
zapobiegać niewłaściwemu wykorzystaniu danych.

Kluczowe różnice między abstrakcją a enkapsulacją

  1. Abstrakcja koncentruje się na komponentach, które są wymagane
    zbudować system, podczas gdy enkapsulacja koncentruje się na ukrywaniu złożoności
    system.
  2. Abstrakcja odbywa się na poziomie projektowania systemu i
    hermetyzacja jest wykonywana, gdy system ma
    został wdrożony.
  3. Głównym motywem abstrakcji jest to, co należy zrobić, aby zbudować
    system, podczas gdy głównym motywem enkapsulacji jest, jak należy to zrobić, aby zbudować system.
  4. Abstrakcja jest osiągana przez
    enkapsulacja natomiast enkapsulacja jest osiągana przez wykonanie elementów
    system prywatny.

Wniosek

Abstrakcja i enkapsulacja
oba są ważną funkcją OOP. Świetna enkapsulacja może osiągnąć fantastyczną abstrakcję.