Proste wyjaśnienie przez analogię: co to jest opakowanie?
Kod nie służy do wyjaśnienia.
Przykład 1: Ipad „otula” iPhone'a
Co robi iPad, czego nie robi iPhone?
Czy nie są w zasadzie tym samym, z wyjątkiem tego, że jeden ma większy ekran?
IPad „otula” iPhone'a: co oznacza, że masz wszystkie zalety iPhone'a WEWNĄTRZ iPada ORAZ większy ekran itp. Jednak zasadniczo wewnątrz iPada znajduje się iPhone.
Co zatem jest innego? Jedyną różnicą jest wygląd zewnętrzny: masz większy ekran i być może nie możesz wykonywać połączeń telefonicznych na iPadzie.

Dosłownie to samo dotyczy „przedmiotów”.
............. wnętrze ma wszystkie dobre rzeczy, które są takie same, ale inne elementy zewnętrzne. Inne opakowanie.
„Opakowania mogą uwidaczniać inne cechy niż podstawowy obiekt” ...... dobrze, ale co to oznacza?
Czasami opakowanie może ograniczać rzeczy, do których masz dostęp. Na przykład iPad może ograniczać możliwość wykonywania połączeń telefonicznych, mimo że ukryty w nim telefon ma taką możliwość.
Przykład 2: Automatyczny samochód pełniący funkcję opakowania do samochodu ręcznego
Pomyśl o samochodzie automatycznym i samochodzie ręcznym. Za kulisami, w samochodzie automatycznym, jest jakiś mechanizm inżynieryjny, który automatycznie zmienia biegi za Ciebie, ale zasadniczo pod powierzchnią samochód nadal jest samochodem ręcznym. Innymi słowy, automatyczne funkcje samochodu „obejmują” ręczną funkcjonalność samochodu. Jeśli chciałeś samodzielnie samodzielnie zmieniać biegi w automatycznym samochodzie - po prostu nie możesz tego zrobić. Możliwość zmiany biegów „nie jest eksponowana” w automatycznym samochodzie. Ale jest odsłonięty w ręcznym samochodzie. To prawda, że analogia jest trochę napięta, ale mam nadzieję, że wiesz, do czego zmierzam.
Ale jaki jest cel opakowania?
Jeśli chcesz uprościć sprawę, napiszesz zajęcia z zawijania. Utworzyłbyś łatwy w użyciu „wrapper” i pozostawił wszystkie skomplikowane elementy wewnątrz opakowania, upewniając się, że te skomplikowane bity nie są „odsłonięte”.
Na przykład możesz mieć opakowanie .net, które pod spodem wykonuje wywołania COM. Gdybyś nie miał opakowania, byłbyś zmuszony do samodzielnego wykonania tych wywołań COM. Na szczęście z opakowaniem wystarczy wykonać wywołania kodu opakowującego .net - co z kolei spowoduje wywołanie COM. Miejmy nadzieję, że to powinno uprościć sprawę.