Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Antonariy* наследует реализацию iParentable Получается, что мне надо "знать", устройство базового класса и каким образом "вот это вот всё" будет использоваться. Потому как фича языка "new" тут не работает. Что выглядит как баг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:33 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомПолучается, что мне надо "знать", устройство базового класса и каким образом "вот это вот всё" будет использоваться. Такая уж штука, это программирование - надо много чего знать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:36 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортом, что тебе надо, никто пока не понял, на фига тебе вообще наследник, а не просто другая реализация интерфейса, или декоратор, или композиция? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:38 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Сон Веры ПавловныАгнец за бортомПолучается, что мне надо "знать", устройство базового класса и каким образом "вот это вот всё" будет использоваться. Такая уж штука, это программирование - надо много чего знать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:45 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортом, Про new я не понял твой вопрос, а про то что надо знать знать всю цепочку наследования и да и нет одновременно. Ведь в памяти это как бы один объект который приводится as или (НовыйТип ) в любой другой из цепочки наследования. Все логично. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:46 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортом, Можно попробовать такую дорожную карту: - в моделировании обойтись без интерфейсов. - интерфейс добавить после обоснования необходимости оного. Например, для сериализации... Добавить "сбоку"))) новое поведение. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 15:50 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Сон Веры ПавловныАгнец за бортомПолучается, что мне надо "знать", устройство базового класса и каким образом "вот это вот всё" будет использоваться. Такая уж штука, это программирование - надо много чего знать. Я про Low Coupling , при чем тут "программирование - такая штука"? Я наследуюсь от класса, перекрываю метод с new - и думаю, что этого достаточно. Компилятор пропустит, окей. Но в рантайме, при приведении к интерфейсу - вызовется метод базового класса. Мне надо либо: 1. Указать явно, что наследник реализует требуемый интерфейс, что несколько "избыточно", как по мне. 2. Либо использовать virtual в базовом классе, который может быть не моим. 3. Либо привести объект к типу-наследнику, но это вообще бред. Какие еще варианты? Нету. Получается, что наследник "как бы реализует интерфейс, но как бы не до конца". Мутная тема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 16:23 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомМутная тема. Тебе явно не нужна реализация базового класса, а нужна другая, но при этом написать её для тебя несколько "избыточно". Действительно мутная тема ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 16:51 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомКомпилятор пропустит, окей.нет под рукой студии. Если вообще молчит, тогда согласен с мутной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 16:55 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Дмитрий МухТебе явно не нужна реализация базового класса, а нужна другая, но при этом написать её для тебя несколько "избыточно". "Зарекалась свинья в грязи валяться". Есть интерфейс, объявляет 15 методов. Есть класс А , который их реализует И мне нужен класс В , который будет вести себя как класс А , за исключением одного метода. Мне скопировать всю реализацию из А в В ? Ты нифига о контексте не знаешь, но советы даёшь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 16:57 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомДмитрий МухТебе явно не нужна реализация базового класса, а нужна другая, но при этом написать её для тебя несколько "избыточно". "Зарекалась свинья в грязи валяться". Есть интерфейс, объявляет 15 методов. Есть класс А , который их реализует И мне нужен класс В , который будет вести себя как класс А , за исключением одного метода. Мне скопировать всю реализацию из А в В ? Ты нифига о контексте не знаешь, но советы даёшь. Декоратор тебе в помощь, дружок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:09 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:13 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Дмитрий Мух, ну или сделай метод виртуальным уже и оверрайди как тебе угодно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:15 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Дмитрий Мух, Это костыль. Который приходиться юзать из-за какого-то бага в архитектуре языка. И не дружок ты мне, **** ******. ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:17 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Гы, гы, вот ты сейчас прям так обидно подколол, я аж заплакал. Под стол небось упал, смеясь как чайка? Ладно, раз костыль, то ищи решение сам, а я понаблюдаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:21 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортом, и не смей использовать декоратор, **** ******! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:23 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:51 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
дык все интрефейсы в байткоде есть абстрактные типы которых скрыли конструктор ( еслимненеизменяетпамять) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 17:52 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомИ мне нужен класс В , который будет вести себя как класс А , за исключением одного метода. Нет. Это тебе не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 20:58 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
hVosttАгнец за бортомИ мне нужен класс В , который будет вести себя как класс А , за исключением одного метода. Нет. Это тебе не нужно. )) тоже верно. У него чисто теоретический вопрос был. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 21:02 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Агнец за бортомAntonariy* наследует реализацию iParentable Получается, что мне надо "знать", устройство базового класса и каким образом "вот это вот всё" будет использоваться. А ты как думал? Можно наследовать незнамо что, наугад, закрыв глаза? Или наследовать лишь то, что имеет единственный метод MakeFuckingGood? Агнец за бортомНо в рантайме, при приведении к интерфейсу - вызовется метод базового класса.Ты явно указываешь, что нужно вызвать метод интерфейса, этот метод реализован в базовом классе, он и вызывается. Если тебе нужен переопределенный метод класса-наследника, приводишь к типу наследника. С какой стати компилятор должен угадывать твои мысли, мол дергая метод наследника ты НА САМОМ ДЕЛЕ хочешь дернуть реализацию интерфейса? Агнец за бортомМутная тема.Мутная она лишь в том смысле, что ты сам не знаешь, какой метод тебе нужен - базовый или переопределенный. Агнец за бортомИ мне нужен класс В, который будет вести себя как класс А, за исключением одного метода. Так все-таки знаешь - переопределенный. Но с какого-то перепугу считаешь, что компилятор должен при обращении к интерфейсу выдавать тебе переопределенный метод. А с какого? Он к интерфейсу не относится от слова совсем. Это чисто метод класса-наследника, он лишь название имеет такое же, как метод интерфейса. Агнец за бортомКоторый приходиться юзать из-за какого-то бага в архитектуре языка.Это баг не языка, а твоего понимания языка. А тебе нужно следующее: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. При наличии virtual/override С2.Test связывается с интерфейсом. При наличии new С2.Test независим от интерфейса, это такой же самостоятельный метод класса как Test2. Запомни это и не возводи напраслину на язык. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 21:14 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Или вкратце: Переопределение методов поддерживает наследование. Перегрузка методов не поддерживает наследование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 21:20 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
Соответственно тут: авторЕсли тебе нужен переопределенный перегруженный метод класса-наследника ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 21:21 |
|
||
|
Наследование и интерфейсы.
|
|||
|---|---|---|---|
|
#18+
И далее тоже налажал, под переопределенными перегруженные подразумевал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2018, 21:23 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=39720577&tid=1398780]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 187ms |

| 0 / 0 |
