ConstructiCat Logo
CodeBust.
Browse section ▾

Отказ от наследства.

Если подкласс использует лишь малую часть унаследованных методов и свойств суперкласса, это является признаком неправильной иерархии. При этом ненужные методы могут просто не использоваться либо быть переопределёнными и выбрасывать исключения.

##Signs and Symptoms

Если подкласс использует лишь малую часть унаследованных методов и свойств суперкласса, это является признаком неправильной иерархии. При этом ненужные методы могут просто не использоваться либо быть переопределёнными и выбрасывать исключения.

##Reasons for the Problem

Кто-то создал наследование между классами только из побуждений повторного использования кода, находящегося в суперклассе. При этом суперкласс и подкласс могут являться совершенно различными сущностями.

##Payoff

  • Улучшает понимание и организацию кода. Теперь вы не будете тратить время на догадки о том, почему класс Стул унаследован от класса Животное (несмотря на то, что оба имеют четыре ноги).