hirthwork
27.06.2012 10:22 mcabber76E5D984
Java иногда рвёт шаблон, который много лет адаптировался к реальности плюсов.
Допустим есть класс A, который реализует метод f(). В то же время, есть
интерфейс B, который объявляет абстрактную функцию f(). Ну и сделаем дикое
предположение, что программисту хочется получить класс реализующий интерфейс B
и имеющий реализацию A.
Что делает плюсокодер? Правильно, заводит класс C, унаследованный от A и B и
вручную пишет делегирование. Когда методов не один, а три-пять-семь, это
выливается в ощутимый pain in the ass.
Как это делается в джаве? class C extends B implements A {}. Всё.
Из-за подобных мелочей плюсокодеры часто рвут шаблон, когда начинают погружение
в удивительный мир псилоцибов^WJava
Наследоваться только ради получения реализации одного метода — ну как-то это семантически неправильно.
про «три-пять-семь» ты видимо пропустил? к тому же не вижу ничего зазорного в лишнем наследовании
я тоже ничего против не имею, кроме как "наследование ради копипасты кода". наследование, всё же, должно быть более семантическим.
ну да. вопрос наличия ООП в семантике