|
Подскажите по наследованию
|
|||
---|---|---|---|
#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.
Почему выводится A.print1? Ссылка же ведет на тип данных B Если перегрузка, то ищется метод у текущего объекта ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2020, 18:35 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview Почему выводится A.print1? Ссылка же ведет на тип данных B У хВоста спроси - он наследование любит ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2020, 18:42 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview, Ты, похоже, на ворнинги вообще не смотришь? Потому что ворнинг CS0114 должен быть. А так-то такие вопросы ну уж совсем джунам на интервью обычно задают. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2020, 18:44 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview Почему выводится A.print1? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2020, 19:53 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
Shocker.Pro listtoview Почему выводится A.print1? нет тип переменной b является B ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 08:42 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview Shocker.Pro пропущено... Потому что у тебя b имеет тип A. Учебник прочти. нет тип переменной b является B ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 10:01 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview Shocker.Pro пропущено... Потому что у тебя b имеет тип A. Учебник прочти. нет тип переменной b является B ты путаешь тип времени выполнения и тип времени компиляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 10:20 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
Коллеги, а зачем сделано так что модификатор доступа производного класса должен быть таким же или более строгим чем базового? Например я не хочу что бы животных плодили, а людей пожалуйста ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 15:23 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
А что тут странного. Если кто-то свойство в классе сделал приватным, он понимает, что делать возможность его публичную модификацию опасно (например из-за потери консистентности). А ты хочешь взять и разрушить базовый класс. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 15:31 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
Shocker.Pro А что тут странного. Если кто-то свойство в классе сделал приватным, он понимает, что делать возможность его публичную модификацию опасно (например из-за потери консистентности). А ты хочешь взять и разрушить базовый класс. рефлекшен выручит) ну да, это я чет подтупливаю, вопрос снят просто когда virtual и override все просто, а вот с перегрузкой да еще и new плаваю ушел читать ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 15:39 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview еще и new "Еще и new" это говнокод. И "virtual", по-хорошему, тоже быть нигде не должно. Должно быть либо "abstract", либо "override sealed". Потому что перегрузка неабстрактных методов, за редким исключением, это тоже говнокод. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 15:47 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
fkthat Потому что перегрузка неабстрактных методов, за редким исключением, это тоже говнокод. Чего это? ))) Целая канистра аксимоматичных утверждений, как выясняется ни на чём не основанных )) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 16:57 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
hVostt Чего это? ))) Это МЕДИАТОР! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 17:22 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
fkthat hVostt Чего это? ))) Это МЕДИАТОР! Да откуда ты эти странные идеи вообще достаёшь? :) Ты бы к ним аттачил хоть парочку обоснований, хотя бы для себя. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 17:27 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
hVostt хоть парочку обоснований Можно подумать, что тебя интересуют обоснования, или, что ты хотя бы их читаешь :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 17:31 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
fkthat hVostt хоть парочку обоснований Можно подумать, что тебя интересуют обоснования, или, что ты хотя бы их читаешь :)) Конечно интересуют, более того, многое мне близко, проходил и даже так когда-то думал ) Разве плохо, иметь чёткое обоснование для тех или иных утверждений. Некоторые вещи намеренно обозначают как "абсолютное зло" (например, GOTO), чтобы выжечь практику использование совсем, на корню. Но это вовсе не означает, что тот же GOTO это абсолютное зло )) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 17:42 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview просто когда virtual и override все просто, а вот с перегрузкой да еще и new плаваю Еще один повод перейти в java - там, вроде бы, все виртуальное :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 19:18 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
fkthat hVostt Чего это? ))) Это МЕДИАТОР! В некоторых случаях (как, например, с наркотиками) практичней что-то запретить, чем объяснять каждому. Вкратце, перегрузка это всегда способ нагамнюжить при неправильном использовании, причем, что важнее, нагамнюжить не в свой код (это ладно бы), а в чужой. Т.ч. сто раз надо продумать и просчитать, прежде чем давать возможность кому угодно что-то перегружать по своим хотелкам - чаще практичней сделать sealed. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 21:57 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
hVostt Некоторые вещи намеренно обозначают как "абсолютное зло" (например, GOTO), чтобы выжечь практику использование совсем, на корню. Но это вовсе не означает, что тот же GOTO это абсолютное зло )) Смысла нет обсуждать, ведь у вас в ПХП без goto все равно ведь никак? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2020, 23:09 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
fkthat listtoview, Ты, похоже, на ворнинги вообще не смотришь? Потому что ворнинг CS0114 должен быть. А так-то такие вопросы ну уж совсем джунам на интервью обычно задают. CS0108 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 15:50 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#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.
на мой взгляд конкретный тигр должен рычать даж если мы на него смотрим как на кошку. При переопределении так и происходит. А вот зачем нужно впринципе сокрытие непонятно. Поясните пожалуйста. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 18:07 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
listtoview А вот зачем нужно впринципе сокрытие непонятно ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 18:20 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
Сокрытие может возникнуть случайно, если ты добавил метод к унаследованному классу, а потом производитель базового класса добавил метод с такой же сигнатурой. Тогда ты можешь добавить new чтобы подавить варнинг, но лучше по возможности отрефакторить свой метод. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 18:21 |
|
Подскажите по наследованию
|
|||
---|---|---|---|
#18+
Shocker.Pro Сокрытие может возникнуть случайно, если ты добавил метод к унаследованному классу, а потом производитель базового класса добавил метод с такой же сигнатурой. Тогда ты можешь добавить new чтобы подавить варнинг, но лучше по возможности отрефакторить свой метод. ок ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 08:04 |
|
|
start [/forum/topic.php?fid=18&fpage=5&tid=1354593]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 10ms |
total: | 146ms |
0 / 0 |