Показать сообщение отдельно
Старый 07.12.2007, 15:36
VovkaMorkovka вне форума Посмотреть профиль Отправить личное сообщение для VovkaMorkovka Найти все сообщения от VovkaMorkovka
  № 2  
Ответить с цитированием
VovkaMorkovka

Регистрация: Apr 2006
Сообщений: 421
Что именно Вы не можете понять, зачем в природе существуют интерфейсы? Или зачем нужна фабрика?
То, что несколько классов соответствуют один и тот - же интерфейс значит то, что они соответствуют определенному типу данных. А тип - же данных, в свою очередь, является спецификаций того, какие операции можно производить над объектом данного типа. Т.е если у вас два объекта разных классов, но эти самые классы соответствуют одному интерфейсу, то над данными объектами можно производить те операции, которые указаны в интерфейсе причем над тем какой класс имеет данный объект Вы не задумываетесь.

Пример, немного надуманный, но отражает суть: у вас есть два класса, часы и робот, оба не имеют предков, но соответствуют интерфейсу "Ходящие". У вас есть массив для всех элементов находящихся в приложении, и по всему массиву вы идете циклом и вызываете их операцию "идти". Т.е. у вас нет необходимости использовать абстрактный класс "ходящие", а это важно потому, что робот может еще и стрелять.

p.s. Почитайте банду четырех лучше, или "Thinking java in pattern" Брюса Эккеля, там все примеры жизненные


Последний раз редактировалось VovkaMorkovka; 07.12.2007 в 15:47.