История изменений
Исправление Syncro, (текущая версия) :
так и не понял, что значит «надо чтобы в X делалось A,D», вы можете переопределить метод на любом уровне и сделав его пустым или таким как вам требуется. Если делать глубокие иерархии действительно можно столкнуться с какими-то сложностями, особенно если у вас нет возможности делать множественное наследование или в языке усложнено позднее связывание, поэтому такое обычно не рекомендуется, что впрочем не мешает выстраивать 2-3х уровневое наследование и решать этим 80% потребностей переиспользования кода.
наследование и интерфейсы это противоположные по эффекту понятия: наследование служит для переиспользования кода через возможность его расширения, интерфейсы - для того что-бы между классами соблюдалась согласованность поведения
наследование позволяет вам сделать аккуратно, интерфрейсы - помогают не делать неаккуратно
Исправление Syncro, :
так и не понял, что значит «надо чтобы в X делалось A,D», вы можете переопределить метод на любом уровне и сделав его пустым или таким как вам требуется. Если делать глубокие иерархии действительно можно столкнуться с какими-то сложностями, особенно если у вас нет возможности делать множественное наследование, поэтому такое обычно не рекомендуется, что впрочем не мешает выстраивать 2-3х уровневое наследование и решать этим 80% потребностей переиспользования кода.
наследование и интерфейсы это противоположные по эффекту понятия: наследование служит для переиспользования кода через возможность его расширения, интерфейсы - для того что-бы между классами соблюдалась согласованность поведения
наследование позволяет вам сделать аккуратно, интерфрейсы - помогают не делать неаккуратно
Исходная версия Syncro, :
так и не понял, что значит «надо чтобы в X делалось A,D», вы можете переопределить метод на любом уровне и сделав его пустым или таким как вам требуется. Если делать глубокие иерархии действительно можно столкнуться с какими-то сложностями, особенно если у вас нет возможности делать множественное наследование, поэтому такое обычно не рекомендуется, что впрочем не мешает выстраивать 2-3х уровневое наследование и решать этим 80% потребностей переиспользования кода.
наследование и интерфейсы это противоположные по эффекту понятия: наследование служит для переиспользования кода через возможность его расширения, интерфейсы - для того что-бы между классами соблюдалась согласованность поведения наследование позволяет вам сделать аккуратно, интерфрейсы - помогают не делать неаккуратно