Zpo-9-wyk-Slajd36
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Self-Encapsulate Field
Fowler wyróżnił dwa przekształcenia dotyczące hermetyzacji pól, w zależności od celu ich stosowania. W pierwszym przypadku jest on związany z koniecznością zmiany sposobu odczytywania wartości pola w podklasach. Ponieważ pola nie są polimorficzne, dlatego konieczne jest hermetyzowanie ich poprzez metody get/set.
Mechanika jest intuicyjnie prosta: należy utworzyć parę metod get/set i zadeklarować w nich niepubliczny poziom widoczności (ponieważ użytkownikami tych metod mają być podklasy, a nie klasy dostępne w inny sposób). Następnie odwołania do pola występujące w podklasach należy zastąpić wywołaniami metod get/set i zadeklarować pole jako prywatne.