override
делает для вас одну вещь: при удалении Tooth.ache
, но не его реализации позже, вы получите ошибки компилятора.В частности, это заставляет реализации Tooth
(написанные вами или другими людьми) быть «близкими» к Tooth
в определенном смысле, а именно, что устаревшие методы исчезают (или, по крайней мере, пересматриваются).
Это может или не может быть желательным.