Как отойти от наследования

Я искал здесь и на других форумах и не нашел хорошего ответа .. Я как бы знаю, что расширение классов - не лучшая практика. И что мне надо больше использовать интерфейсы. Моя проблема в том, что обычно я начинаю создавать интерфейсы, а затем перехожу к абстрактным классам, потому что всегда есть некоторые функции, которые я хочу реализовать в суперклассе, чтобы мне не приходилось реплицировать их в каждом дочернем классе. Например, у меня есть класс «Автомобиль» и дочерние классы «Автомобиль» и «Велосипед». В классе Vehicle можно было бы реализовать множество функций, таких как Move () и Stop (), поэтому что было бы лучше всего сохранить архитектуру в чистоте, избегать повторения кода и использовать интерфейсы вместо наследования? Большое спасибо!

(если вы не понимаете, почему я спрашиваю, вы можете прочитать эту интересную статью: http://www.javaworld.com/javaworld/jw-08-2003/jw-0801 -toolbox.html )

5
задан Paulo Ricca 27 May 2011 в 00:04
поделиться