Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Обьясните про интерфейсы / 25 сообщений из 84, страница 1 из 4
11.09.2013, 13:57
    #38393578
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
Прочитал несколько книг именно где описываются интерфейсы
Шилдта, Михаил Фленов, Бен Ватсон, и т д

но так и не понял зачем они ведь я могу заменять интерфейсы простыми классами

потом почитал Э. Стиллмен, Дж. Грин начало кое что доходить но все равно я не могу понять как их правильно использовать и для чего все таки они нужны

Кто может обьясните мне как вы понимаете их использование?

Спасибо.
...
Рейтинг: 0 / 0
11.09.2013, 14:08
    #38393592
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
VIT2708,

1. совершенно разные классы могут реализовывать одни и те же интерфейсы.
2. класс может наследоваться только от одного класса, в то время как он может реализовывать сколько угодно (гипотетически) интерфейсов
3. разные интерфейсы, которые реализует класс, могут иметь одни и те же наименования методов

интерфейсы нужны много где и много для чего, например, для реализации паттерна «Стратегия» ну и т.д.

в общем. читайте ещё :)
а лучше практикуйте.
...
Рейтинг: 0 / 0
11.09.2013, 14:58
    #38393680
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
hVosttVIT2708,

1. совершенно разные классы могут реализовывать одни и те же интерфейсы.
2. класс может наследоваться только от одного класса, в то время как он может реализовывать сколько угодно (гипотетически) интерфейсов
3. разные интерфейсы, которые реализует класс, могут иметь одни и те же наименования методов

интерфейсы нужны много где и много для чего, например, для реализации паттерна «Стратегия» ну и т.д.

в общем. читайте ещё :)
а лучше практикуйте.

1. совершенно разные классы могут наследоватсься от одного базового класса.
2. наследоватся можна от одного класса но можна выстроить наследование что то наподобие матрешки от простого к сложному
3 а смысл?

кроме того что интерфейсы могут также быть ссылками на классы, ну и приведение одного класса к другому который наследует один и тот же интерфейс больше пользы пока не вижу
...
Рейтинг: 0 / 0
11.09.2013, 15:00
    #38393682
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
VIT2708, идея проста как 5 копеек. Классы - это реализация, интерфейсы - нет. Всё остальное вторично.
...
Рейтинг: 0 / 0
11.09.2013, 15:06
    #38393690
handmadeFromRu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
про solid, когда читал было множество примеров, поглядите
...
Рейтинг: 0 / 0
11.09.2013, 15:09
    #38393694
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
по моему топик создан не в том разделе
...
Рейтинг: 0 / 0
11.09.2013, 15:16
    #38393705
VIT2708
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
Паганельпо моему топик создан не в том разделе

а где он должен быть?

я ведь только хотел получить ответ зачем нужны интерфейсы от тех кто их использует, вот и все
...
Рейтинг: 0 / 0
11.09.2013, 15:16
    #38393706
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
VIT2708,

если класс реализует интерфейс IComparable , значит объекты этого класса можно сравнивать между собой. их можно хранить в сортированных коллекциях и к ним можно применять алгоритмы сортировки.

таким образом можно написать всего лишь один метод быстрой сортировки, который будет сортировать любую коллекцию объектов, реализующих интерфейс IComparable .

или вы предлагаете создать базовый класс ComparableBase и всем от него наследоваться в обязательном порядке, если требуется сравнивать объекты?

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

базовый класс в данном случае не подходит, так как суть и задача у него совершенно другие.
...
Рейтинг: 0 / 0
11.09.2013, 15:24
    #38393718
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
всё становится ещё интересней, если начать разговор про ковариантность и инвариантность
...
Рейтинг: 0 / 0
11.09.2013, 15:31
    #38393730
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
VIT2708Паганельпо моему топик создан не в том разделе
а где он должен быть?
Тут http://www.sql.ru/forum/dotnet
...
Рейтинг: 0 / 0
11.09.2013, 16:52
    #38393829
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
VIT2708Прочитал несколько книг именно где описываются интерфейсы
Шилдта, Михаил Фленов, Бен Ватсон, и т д

но так и не понял зачем они ведь я могу заменять интерфейсы простыми классами

потом почитал Э. Стиллмен, Дж. Грин начало кое что доходить но все равно я не могу понять как их правильно использовать и для чего все таки они нужны

Кто может обьясните мне как вы понимаете их использование?

Спасибо.

Интерфейсы нужно, потому что хочется множественного наследования, а нельзя.
Вот и придумали интерфейсы.
Почему множественное наследование это плохо - темя для отдельного флейма.

А так просто нужно запомнить что, интерфейсы нужны, чтобы обойти запрет на множественное наследование.

Т.е. Вы правы, что при хорошо спроектированной объектной модели лишняя сущность.
Хотя очень удобная :-)
...
Рейтинг: 0 / 0
11.09.2013, 16:55
    #38393836
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
hVosttвсё становится ещё интересней, если начать разговор про ковариантность и инвариантность Контравариантность
...
Рейтинг: 0 / 0
11.09.2013, 17:01
    #38393850
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
skyANAhVosttвсё становится ещё интересней, если начать разговор про ковариантность и инвариантность Контравариантность
...
Рейтинг: 0 / 0
11.09.2013, 17:03
    #38393856
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
skyANA,

спасибо
...
Рейтинг: 0 / 0
11.09.2013, 17:05
    #38393868
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
МСУ,

ну ты и дракон трёхголовый
...
Рейтинг: 0 / 0
11.09.2013, 17:16
    #38393896
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
Есть и понятие инвариантности в данном контексте: "отсутствие наследования между производными типами назвается инвариантностью ".
Но жопой чую, что имелась ввиду контравариантность.
...
Рейтинг: 0 / 0
11.09.2013, 17:27
    #38393920
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
skyANA,

всё правильно чувствуешь. просто инвариантность — более общее определение ковариантности и контравариантности.
...
Рейтинг: 0 / 0
11.09.2013, 17:34
    #38393939
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
hVosttskyANA, всё правильно чувствуешь. просто инвариантность — более общее определение ковариантности и контравариантности.
Остановись. Иначе придется вызывать докторов
...
Рейтинг: 0 / 0
11.09.2013, 17:42
    #38393959
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
МСУ,

что не так? не сможешь объяснить, возвращайся с пылесосом к пустыне.
...
Рейтинг: 0 / 0
11.09.2013, 17:50
    #38393972
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
hVosttМСУ, что не так? не сможешь объяснить, возвращайся с пылесосом к пустыне.
Тебя читать однака ржака, не останавливайся - пылесосы курят в сторонке

P.S. Для тех, кто в танке: инвариантность абсолютно не обобщает определения ковариантности и контрвариантности, она тут вообще мимо кассы. "Независимость от каких-либо условий" и "способы переноса наследования типов на производные" - вообще как бы некореллируемые понятия, что ты тут хотел обобщать, дурень? Не позорься уже, чем больше ты пишешь, тем больше мы будем смеяться над твоей тупостью
...
Рейтинг: 0 / 0
11.09.2013, 18:20
    #38394012
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
действительно, ко- и контра- вариантность не являются частными случаями инвариантности. обобщенные делегаты преобразовываются при ковариантных присвоении.
...
Рейтинг: 0 / 0
11.09.2013, 18:24
    #38394017
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
МСУтем больше мы будем смеяться над твоей тупостью

.. мы? я был прав на счёт шизофрении :)
передавай привет своей «прелести»!
...
Рейтинг: 0 / 0
16.09.2013, 10:32
    #38397387
Обьясните про интерфейсы
МСУVIT2708, идея проста как 5 копеек. Классы - это реализация, интерфейсы - нет. Всё остальное вторично.Как насчет абстрактных классов?
...
Рейтинг: 0 / 0
16.09.2013, 10:39
    #38397395
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обьясните про интерфейсы
ПробегаллоМСУVIT2708, идея проста как 5 копеек. Классы - это реализация, интерфейсы - нет. Всё остальное вторично.Как насчет абстрактных классов?
В абстрактных классах запрещена реализация?
...
Рейтинг: 0 / 0
17.09.2013, 13:42
    #38398854
Обьясните про интерфейсы
МСУПробегаллопропущено...
Как насчет абстрактных классов?
В абстрактных классах запрещена реализация?Ну, тогда примерчик в студию. На с#, например.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Обьясните про интерфейсы / 25 сообщений из 84, страница 1 из 4
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]