Przedstawiony kod ilustruje dziedziczenie – jedno z fundamentalnych założeń programowania obiektowego. Dziedziczenie pozwala na tworzenie nowych klas na podstawie istniejących, co sprzyja ponownemu użyciu kodu i jego łatwiejszej modyfikacji.
Polimorfizm – Polega na wielopostaciowości metod, ale nie jest to podstawowe założenie pokazane w kodzie. Abstrakcja – Dotyczy ukrywania szczegółów implementacji, co nie jest główną cechą tego kodu. Hermetyzacja – Oznacza ukrywanie danych wewnątrz klasy, co jest inną zasadą obiektowości, ale nie tą prezentowaną tutaj.