Egzamin zawodowyPortal części pisemnej

INF.04 · pytanie 707

Co to jest polimorfizm w programowaniu obiektowym?

  1. AProces tworzenia nowej klasy na podstawie istniejącej
  2. BZdolność klasy do posiadania wielu konstruktorów
  3. CMechanizm ukrywania szczegółów implementacji przed zewnętrznymi klasami
  4. DZdolność obiektów różnych klas do reagowania na tę samą metodę w sposób odpowiedni dla ich klasyPoprawna

Wyjaśnienie

Polimorfizm jest fundamentalnym pojęciem w programowaniu obiektowym, które pozwala obiektom różnych klas na reagowanie na tę samą metodę w sposób odpowiedni dla ich konkretnej klasy. Przykładowo, jeśli mamy klasę `Zwierze` z metodą `dźwięk()`, a następnie klasy `Pies` i `Kot`, każda z tych klas może implementować metodę `dźwięk()` w inny sposób: pies może wydawać dźwięk 'Hau', podczas gdy kot 'Miau'. Dzięki temu, gdy wywołujemy `dźwięk()` na obiekcie typu `Zwierze`, a dokładnie na obiekcie, który może być różnego typu, uzyskujemy różne wyniki w zależności od klasy. Polimorfizm zwiększa elastyczność i skalowalność kodu, co jest zgodne z zasadami SOLID, szczególnie z zasadą otwarte-zamknięte. W praktyce polimorfizm umożliwia programistom tworzenie bardziej złożonych systemów, w których obiekty mogą być używane zamiennie, co ułatwia ich rozwój i konserwację.