Dlaczego tak
Wspólna abstrakcyjna klasa bazowa z abstrakcyjną metodą pole() pozwala trzymać wszystkie figury na jednej liście typu Figura i sumować wynik wywołań pole() bez wiedzy o konkretnych klasach — to polimorfizm. Nowa figura to nowa klasa pochodna, a kod sumujący się nie zmienia. Przy polu typ i instrukcji switch każda nowa figura wymaga edycji istniejącej metody, czego plan miał właśnie uniknąć.