Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.19;
Скачать: CL | DM;

Вниз

Дайте определение полиморфизма   Найти похожие ветки 

 
Kolan ©   (2006-11-02 19:53) [0]

Только понятное, в стиле Юрия Зотова :)

ЗЫ
 Однокурсникам объснить надо :)


 
oldman ©   (2006-11-02 19:55) [1]

Многоморфизм.


 
oldman ©   (2006-11-02 19:56) [2]


>  Однокурсникам объснить надо


А ты что, староста?
Однокурсники учебник читать не умеют?


 
Юрий Зотов ©   (2006-11-02 20:04) [3]

В общем виде: способность объекта-потомка изменять свое поведение по отношению к объекту-предку.

Более конкретно: способность объекта-потомка изменять реализацию методов, унаследованных от объекта-предка, а также добавлять новые свойства и методы.


 
Alx2 ©   (2006-11-02 20:07) [4]

Многоформие..
Способность "быть" как самим собой, так и любым из своих предков.


 
Reindeer Moss Eater ©   (2006-11-02 20:08) [5]

Скорее это возможность единообразного обращения с разнородными объектами. (Экземплярами разных классов)


 
Reindeer Moss Eater ©   (2006-11-02 20:13) [6]

Простейший пример полиморфизма

procedure TForm1.SomethingNotifyEvent(Sender: TObject);
begin
ShowMessage(IntToStr(TComponent(Sender).Tag));
end;


 
vuk ©   (2006-11-02 20:43) [7]

to Юрий Зотов ©   (02.11.06 20:04) [3]:
>В общем виде: способность объекта-потомка изменять свое поведение по
>отношению к объекту-предку.
Полиморфизм, он и без наследования бывает (как пример - интерфейсы) да и вообще, без ООП может быть.


 
Eraser ©   (2006-11-02 20:49) [8]

imho на примере интерфесов проще всего объяснить, т.е. один и тот же объект допускает несколько стандартных или не очень способов доступа к себе.


 
Lamer@fools.ua ©   (2006-11-02 20:59) [9]

Полиморфизм — возможность программного кода работать с объектами разных классов одинаковым образом.

Что, в общем-то, тоже что и [5].


 
Lamer@fools.ua ©   (2006-11-02 20:59) [10]

тоже=>то же


 
Anatoly Podgoretsky ©   (2006-11-02 21:03) [11]

> Alx2  (02.11.2006 20:07:04)  [4]

Форм <> Морф


 
Kolan ©   (2006-11-02 21:12) [12]

> Простейший пример полиморфизма

Я пример могу и сам :) Вот определение.
В википедии http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC_%D0%B2_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0%D1%85_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F

Не очень понятно...


> [3] Юрий Зотов ©   (02.11.06 20:04)

В принципе вроде ...,
как-то мне кажется я раньше знал определение... более понятное :)


> А ты что, староста?

Нет. Но чтобы людям объяснить зачем в ЮМЛ диаграмма классов нужно знать некий минимум ООП, а про нашинских преподах я уже жаловался. :) Вот приходится мне...


 
Kolan ©   (2006-11-02 21:15) [13]

Вот у меня есть книжка... Там так:
Полиморфизм - возможность использовать одинаковые имена для методов входящих в разные классы. Концепция полиморфизма состоит в том, что при применении метода к объекту используется именно тот метод, который соответствует классу объекта.

Первое предложение не очень, а вто второе по моему очень пнятно, как вам?


 
jack128(not home)   (2006-11-02 21:23) [14]


> Первое предложение не очень,

не то что "не очень", а в корне не верно.


 
Kolan ©   (2006-11-02 21:26) [15]

> не то что "не очень", а в корне не верно.

Книжка по паскалю :) В конце чуток Delphi - единственное печатное издание по Delphi у меня на полке :)


 
Alien1769 ©   (2006-11-02 21:30) [16]

Полиморфи&#769;зм (в языках программирования) — возможность программного кода работать с объектами разных классов одинаковым образом. Кратко смысл полиморфизма можно выразить фразой: «Один интерфейс, множество методов». Полиморфизм — один из трёх важнейших механизмов объектно-ориентированного программирования (наряду с инкапсуляцией и наследованием).

Полиморфизм позволяет писать более абстрактные программы и повысить коэффициент повторного использования кода. Общие свойства объектов объединяются в систему, которую могут называть по-разному — интерфейс, класс. Общность имеет внешнее и внутреннее выражение. Внешне общность проявляется как одинаковый набор методов с одинаковыми именами и сигнатурами (типами аргументов и результатов). Внутренняя общность есть одинаковая функциональность методов. Её можно описать интуитивно или выразить в виде строгих законов, правил, которым должны подчиняться методы. Возможность приписывать разную функциональность одному методу (функции, операции) называется перегрузкой метода (функций, операций).

Источиник: Википедия
http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC_%D0%B2_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0%D1%85_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F


 
Суслик ©   (2006-11-02 21:32) [17]

почитай эккеля - thinking in java (филосовия java).
уж что что, а это он объясняет просто классно.


 
Alx2 ©   (2006-11-02 22:42) [18]

>Anatoly Podgoretsky ©   (02.11.06 21:03)

morphos (греч) - форма.

(я не про Delphi )


 
Petr V. Abramov ©   (2006-11-02 22:56) [19]

> [3]
ну это в стиле хаяма (*который явно не Омар, без формул :)


 
Percent   (2006-11-02 22:59) [20]

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

Закрадывается подозрение, что фамилия автора книги начинается на букву Ф.
Только ему такую забористую траву доставляют.
Везет же некоторым...


 
Anatoly Podgoretsky ©   (2006-11-02 23:41) [21]

> Alx2  (02.11.2006 22:42:18)  [18]

Ну тогда извиняюсь, с греками не поспоришь.


 
Anatoly Podgoretsky ©   (2006-11-02 23:41) [22]

> Alx2  (02.11.2006 22:42:18)  [18]

> Alx2  (02.11.2006 22:42:18)  [18]

Ну тогда извиняюсь, с греками не поспоришь.


 
Anatoly Podgoretsky ©   (2006-11-02 23:41) [23]

> Alx2  (02.11.2006 22:42:18)  [18]

> Alx2  (02.11.2006 22:42:18)  [18]

> Alx2  (02.11.2006 22:42:18)  [18]

Ну тогда извиняюсь, с греками не поспоришь.


 
Alx2 ©   (2006-11-02 23:43) [24]

>Anatoly Podgoretsky ©   (02.11.06 23:41)

:) А оно и не важно здесь.

P.S.
Я бы и с первого раза понял :)


 
Percent   (2006-11-03 00:06) [25]

morphos (греч) - форма.

Венера Милосская такая... полиморфная... обалдеть...


 
Германн ©   (2006-11-03 01:30) [26]


> Alx2 ©   (02.11.06 23:43) [24]
>
> >Anatoly Podgoretsky ©   (02.11.06 23:41)
>
> P.S.
> Я бы и с первого раза понял :)
>

А ты тут собсс-но вообще ни при чём. :-). АП доделывает своего клиента тренируясь "на кошках" :-)
Блин, опечатка. В основном вышеуказанный тренируется на "шпротах". :-)
Ну и заодно оный может пытается догнать Кетмара в Топ10! :-) Перегнать-то уж точно "нереально".


 
Ketmar ©   (2006-11-03 01:44) [27]

>[26] Германн(c) 3-Nov-2006, 01:30
>Ну и заодно оный может пытается догнать Кетмара в Топ10! :-)
я тоже могу сделать дупликатор. даже лучше могу -- бредогенератор.
хотя... зачем делать? одного достаточно. его мне при рождении вмонтировали...


 
kaif ©   (2006-11-03 02:49) [28]

ИМХО, всегда лучше объяснять на примерах.
Метод MultimediaObject.LoadFromFile может быть реализован в потомках по-разному, но называться одинаково. В одном случае файл может быть MP3-файлом, в другом случае картинкой или DVD-файлом, в третьем - базой данных исполнителей. Способы загрузки и воспроизведения файлов буду разными и их можно добавлять, создавая новые классы. Если появится новый тип файлов, достаточно будет создать один новый класс для таких файлов, а не переделывать весь плеер.
Может пример не лучший, но зато сразу понятный студентам.



Страницы: 1 вся ветка

Текущий архив: 2006.11.19;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.029 c
15-1162238370
Petr V.Abramov
2006-10-30 22:59
2006.11.19
нЕ или нИ?


3-1158518226
PHPDeveloper
2006-09-17 22:37
2006.11.19
paradox без BDE


2-1162419772
jTommy
2006-11-02 01:22
2006.11.19
Получть из пути с короткими именами путь с длинными именами


15-1162272882
Vlad Oshin
2006-10-31 08:34
2006.11.19
А не объяснит ли кто, популярно, почему произошел август 1998?


2-1162280494
Делфи
2006-10-31 10:41
2006.11.19
IP