|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.05.2010, 23:39 | #1 |
Пользователь
Регистрация: 03.03.2010
Сообщений: 18
|
Полиморфизм
Знаю что такое инкапсуляция - это объединения данных(методов),
и кода(переменных) в объект и скрытие реализации объекта от пользователя предоставив ему лишь интерфейс объекта. Наследование-способность другим классам получать свойства родительского класса. Не могу въехать что означает понятие Полиморфизм, хотя и прочитал не раз. Полиморфизм - это объект класса, который можно использовать в коде для разных целей? |
20.05.2010, 23:56 | #2 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
http://ru.wikipedia.org/wiki/%D0%9F%...D0%B8%D0%B5%29
Неужели так трудно найти?
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
21.05.2010, 00:12 | #3 |
Пользователь
Регистрация: 03.03.2010
Сообщений: 18
|
Так я это перечитывал уже, обясните человеческими словами что такое слово полиморфизм.
Последний раз редактировалось mister2010; 21.05.2010 в 00:17. |
21.05.2010, 02:34 | #4 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 305
|
Я плохой оратор, но все же попытаюсь объяснить как это понимаю я.
Есть 2 класса ("Класс1" и "Класс2") которые содержат методы с одинаковыми названиями и параметрами(на пример квадратное уравнение можно вычислить 2 способами в зависимости от того четное "Б" или нет) Так же есть класс с которого и начинается работа всей программы. Он содержит 2 функции "Маин" и "Полиморфизм" в Маин выполняется какое-то действие(например ввод "А","Б" и "С") в результате которого мы должны проверить четное ли "Б" и в зависимости от результата создать объект требуемого класса (для того чтобы можно было наследовать его методы). Дальше передадим созданный объект в метод "Полиморфизм" где уже прописаны функции которые будем вызывать. Т. е., т. к. имена методов классов "Класс1" и "Класс2" совпадают , можно использовать методы нескольких классов с помощью передач разных объектов в метод. Псевдокод псевдокода)) //------------- если "Б" четное тогда создаем объект класса "Класс1" и вызываем методы: disckriminant, koren, x1, x2, ну и ситуации если дискриминант больше 0, меньше 0 или равен 0 иначе создаем объект класса "Класс2" и вызываем: disckriminant, koren, x1, x2, ну и ситуации если дискриминант больше 0, меньше 0 или равен 0 //------------ Либо можно сделать метод "Полиморфизм" который будет содержать: disckriminant, koren, x1, x2 и ситуации если дискриминант больше 0, меньше 0 или равен 0. Теперь из "Маин" передать созданный объект в "Полиморфизм".
Skype: CODERua
|
21.05.2010, 02:51 | #5 |
Пользователь
Регистрация: 03.03.2010
Сообщений: 18
|
Дайте чёткое определение этого термина.
|
21.05.2010, 02:53 | #6 | |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 305
|
Цитата:
Skype: CODERua
|
|
21.05.2010, 02:58 | #7 |
Пользователь
Регистрация: 03.03.2010
Сообщений: 18
|
Суть что оно означает напишите, а не кучу текста в котором больше излагается о квадратном уравнении чем о значении полиморфизма, полиморфизм - это, своими словами, а не заумными фразами и сложными примерами википедии и др. учебников.
Последний раз редактировалось mister2010; 21.05.2010 в 03:01. |
21.05.2010, 03:09 | #8 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 305
|
Полиморфизм - положение теории типов, согласно которому имена (например, переменных) могут обозначать только объекты одного и того же класса.
Учи не ООП, а толковый словарь, так смотри и "заумных" фраз станет поменьше, может хоть одну поймешь.
Skype: CODERua
Последний раз редактировалось [CODER]; 21.05.2010 в 03:14. |
21.05.2010, 03:25 | #9 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
mister2010
реши что тебе надо - четкое определение или обьяснить своими словами. Есть у тебя иерархия классов: base----class1------class2 - тут class1 наследует Base, class2 наследует class1. Ты можешь где то написать: Код:
А определение: "взаимозаменяемость объектов с одинаковым интерфейсом." очень даже четкое |
21.05.2010, 12:02 | #10 | |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2mister2010
Цитата:
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance Последний раз редактировалось pproger; 21.05.2010 в 12:06. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Полиморфизм, наследование и деструкторы | alex_triton | Общие вопросы C/C++ | 1 | 08.11.2009 17:52 |
Полиморфизм и выделение (освобождение) памяти | Scogan | Общие вопросы C/C++ | 9 | 13.04.2009 07:57 |
Полиморфизм и виртуальные методы | Викдон | Общие вопросы Delphi | 1 | 02.02.2009 04:40 |
Полиморфизм. Пример. | Scratch | Общие вопросы C/C++ | 53 | 28.09.2008 18:46 |