Форум → Программирование → PHP для идиотов → PHP и ООП → Нестыковка между наследованием и полиморфизмом.
Нестыковка между наследованием и полиморфизмом.
Страницы: ← Предыдущая страница →
-
Сен. 30, 2010, 12:12 п.п., спустя 4 минуты 21 секунду
я что-то интересное пропустил?
Rotten, меня уже давно интересует универсальное решение для работы с файлами (+scp, sftp, ftp, …). Попробуй нарисовать UML'ку - диаграмму классов -
Сен. 30, 2010, 1:02 п.п., спустя 49 минут 52 секунды
Васяц… ну допустим вот этих три - приватные, а еще пара-тройка… публичные, которые в свою очередь юзают внутри себя эти приватные… -
Сен. 30, 2010, 1:05 п.п., спустя 3 минуты 28 секунд
Вот эти пара-тройка публичных и есть интерфейс.
А смысл полиморфизма в том, что есть код, который юзает этот объект с этими тремя публичными методами. И если этому коду подсунуть объект другого совершенно класса и с другой реализации но с набором тех же публичных методов (интерфейсом), то этому коду будет наплевать на это всё, он будет юзать его, как и юзал.
А то, что внутри есть скрытые методы, которые как-то друг-друга вызывают и как-то наследуются, это к интерфейсам не имеет отношения. -
Сен. 30, 2010, 1:17 п.п., спустя 11 минут 57 секунд
vasa_c, Да, согласен.
Что ж. Жаль, правда что нет возможности определять именно закрытые методы в интерфейсах. Единственный тогда выход - в качестве того интерфейса реализовать абстрактный клас с такими (нереализованными) методами… И просто при наследовании - не забывать всегда сначала посмотреть на него чтобы напомнить себе что именно нужно реализовать -
Сен. 30, 2010, 1:29 п.п., спустя 11 минут 51 секунду
Абырвалг, да думаю в даной теме умл нету нужды - итак все предельно ясно..
Ты мне лучше скажы - какой ты софт юзаешь для проектирования умл.. А то я уже задолбался хуячить все в пейнте.. -
Страницы: ← Предыдущая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!