Quote:
Originally Posted by Tria
Kto mojet obyasnit' kogda sleduyet ispol'zivat' Abstraktniy class a kogda Interface, ved' pochiti ta je samaya funkcional'nost' ?
|
Это точно. Тебе при всем желании не удастся экстенднуть, ежели твой класс уже экстенднут от другого класса, тогда приходится выбирать интерфейс, хотя в некоторых случаях полезнее объект этого (уже экстенднутого) класса вставить в новый класс как мембер, функциональность сохранится. Ещё интерфейсы рекомендуют выбирать, если нужны лишь однинаковые названия функций, но совершенно различные имплементации. Мой опыт программирования ООП в Ява показывает, что лучше этого не делать, потому что как правило все равно найдется потом какой то код, который одинаково хорош для двух или более классов, имплементирующих интерфейс. Советую выбирать наследование всегда, когда это возможно в принципе. Вообще Ява по моему наиболее продвинутый в смысле ООП язык.