|
danii
|
|
Полиморфизм и overloading01.12.2006, 17:57. Показов 13256. Ответов 37
Метки нет (Все метки)
|
|
| 01.12.2006, 17:57 | |
|
Ответы с готовыми решениями:
37
Overloading+Overriding
|
|
danii
|
|
| 11.12.2006, 17:43 | |
|
Danissimo, ты рассказал только про динамический полиморфизм, но есть также и статический (он же параметрический)
Есть мнение что полиморфизм это НЕ ТОЛЬКО динамический полиморфизм |
|
|
4 / 4 / 4
Регистрация: 28.08.2008
Сообщений: 611
|
|
| 11.12.2006, 18:18 | |
|
Да, наверное, можно и так подойти.
Но что я хочу сказать. Смотри, ученые изобрели теорию -- ООП. В ней, на сколько я знаю, полиморфизм только динамический (в твоей терминологии). И называется он там просто полиморфизм, ибо другого полиморфизма там нету. Поэтому и различать нечего. Еще раз, с точки зрения теории, науки, полиморфизм единственен, а именно тот, который ты называешь динамическим. Я вот имеено это имел в виду. То есть наука не знает такого полиморфизма, который строится с помощью перегрузки имен операций.
0
|
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 00:37 | |
|
поли-морф-изм - многообразие форм, если уж исходить из термина как такого и это может, кстати, быть многообразием форм метода с одним и тем же названием
по мне, дак вопрос в самом начале был сформулирован некорректно, поэтому не вижу смысла спорить также я согласен с Danissimo в том плане, что если речь идет об ООП и не уточняется какой полиморфизм имеется ввиду, то по-умолчанию - это динамический, который имеет прямое отношение к наследованию С уважением, Владимир
0
|
|
|
danii
|
|
| 12.12.2006, 13:32 | |
|
я понял что, Danissimo и boombastik не согласны с автором http://www.javable.com/tutorials/fesunov/lesson8/ , и все же оставлю за собой право думать, что полиморфизм это НЕ ТОЛЬКО динамический полиморфизм, а ООП НЕ ТОЛЬКО наследование.
|
|
|
4 / 4 / 4
Регистрация: 28.08.2008
Сообщений: 611
|
|
| 12.12.2006, 15:53 | |
|
Welcome! =)
0
|
|
|
4 / 4 / 4
Регистрация: 28.08.2008
Сообщений: 611
|
|
| 12.12.2006, 16:04 | |
|
Мне интересно, а автор уроков читал научные труды по ООП. Прочитав 40% урока, у меня сложилось впечатление, что он идет от практики. Но не от теории.
0
|
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 19:32 | |
|
danii, вы не правильно меня поняли, я не против терминов статический полиморфизм, динамический полиморфизм и др., я лишь хотел сказать, что вы задали некорректный вопрос, обсуждать который я не вижу смысла
является ли overloading реализацией полиморфизма? во-первыйх, почему один термин по-английски, второй по русски? оба термина имеют устоявшиеся и достаточно четкие термины в обоих языках: overloading, polymorphism - перегрузка методов, полиморфизм во-вторых, вы спрашиваете, является ли перегрузка методов реализацией полиморфизма, таким образом вы даете понять что полиморфизм является другим уровнем абстракции по сравнению с перегрузкой, то есть если полиморфизм - это механизм ООП, то перегрузка методов - это реализация данного механизма скажем в языке Java или ряде языков, такие как Java, C++, C# тогда как, на мой взгляд, перегрузка методов лишь один из возможных видов полиморфизма, но не тот, на котором концентрирует свое внимание ООП, хотя и встречается он почти во всех ОО-языках в-третьих, в каких рамках должна вестись дискуссия? я так понимаю полиморфизм имеется ввиду из области программирования, но обсуждаем ли мы общую теорию ООП, или конкретную реализаию ОО идей в Java, или стандартные механизмы ОО-языков вцелом, или просто флуд на тему: кто как представляет себе тот или иной термин? по-моему, статья из википедии на английском языке полностью расскрывает этот вопрос и снимает данную тему с обсуждения: http://en.wikipedia.org/wiki/Type_polymorphism Type polymorphism но обязательно с поправкой на следующую статью: http://en.wikipedia.org/wiki/Polymorphism_in_object-oriented_programming Polymorphism in object-oriented programming в общем и целом "Overloading" - это "Ad-hoc polymorphism" под "Polymorphism"-ом в ООП понимается "polymorphism (object-oriented programming theory) is the ability of objects belonging to different types to respond to method calls of methods of the same name, each one according to an appropriate type-specific behaviour" С уважением, Владимир
0
|
|
|
danii
|
||
| 12.12.2006, 19:47 | ||
|
||
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 20:01 | |
|
это НЕ реализация полиморфизма
это вид полиморфизма и доступен он нам лишь потому, что термин полиморфизм сам по себе намного шире того значения как понимает его теория ООП существует, например, биологический полиморфизм и это между прочем тоже вид полиморфизма
0
|
|
|
danii
|
|
| 12.12.2006, 20:11 | |
|
ок. пусть будет так.
overloading это вид полиморфизма. с этим я согласен. |
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 20:12 | |
|
попробую по другому
![]() на вопрос "является ли механизм перегрузки методов полиморфизмом в общем понимании?" ответ будет однозначным: "да" на вопрос "является ли механизм перегрузки методов полиморфизмом с точки зрения теории ООП?" ответ будет однозначным: "нет" С уважением, Владимир
0
|
|
|
danii
|
|
| 12.12.2006, 20:24 | |
|
вопрос в ветке java. поэтому ответ "да", overloading в java это также полиморфизм
|
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 20:29 | |
|
тогда сформулируйте, пожалуйста, ваш вопрос применительно к Java
а то получается как в путеводителе по галлактике "Ответ на главный вопрос жизни, вселенной и всего такого" достоверно известен, а вот над формулировкой вопроса бьются не один миллион лет
0
|
|
|
danii
|
|
| 12.12.2006, 20:35 | |
|
я думаю, что все вопросы в этом разделе задаются применительно к java.
по вашему надо было спросить так является ли overloading видом полиморфизма применительно к java. |
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 12.12.2006, 20:50 | |
|
я привел выше 2 формулировки, которые на мой взгляд имеют смылс, к сожалению, не вижу, каким образом можно сформулировать ваш вопрос применительно к Java, поэтому и попросил вас это сделать
впрочем, возможно что-то вроде такого вопроса: пользуются ли создатели языка Java при описании механизма перегрузки методов термином полиморфизм? но вопрос звучит по меньшей мере странно, да и ответ на него не принисет никому счастья ![]() кроме того, не совсем понимаю, почему перегрузку методов вы называете overloading, в то время как polymorphism вы все время обзываете полиморфизмом?
0
|
|
|
sergioK
|
|
| 15.12.2006, 03:55 | |
|
Это как в фильме о приключениях ментов ,:lol:
Какая разница что знаешь из чего ствол сделан если стрелять не научился ? Является перегрузка разновидностью полиморфизма или нет , да какая разница ? здесь же не форум по философии, нужно уметь этим понятиями пользоваться и все , |
|
|
paradise
|
||
| 25.01.2007, 22:29 | ||
Ты упускаешь из виду одно важное обстоятельство: люди, которые ведут спор в философском наклонении о практических вещах, как правило, прекрасно умеют использовать предмет спора на практике. Например я читаю данный топик чтобы поднять настроение. Вот когда думаешь, что в мире полно идиотов и тормозов - заходишь, читаешь и отдыхаешь. |
||
| 25.01.2007, 22:29 | |
|
Помогаю со студенческими работами здесь
38
Полиморфизм Полиморфизм
Полиморфизм Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|