IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> ООП, Полиморфизм
Client
сообщение 15.02.2009 16:00
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


Всем привет!
Начал изучать ООП и появились вопросы. Вроде с наследованием и инкапсуляцией понятно, а вот с полиморфизмом не понятно. Можете объяснить для чего он нужен и что такое виртуальные методы?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 15.02.2009 19:37
Сообщение #2


Гость






Цитата
Инициализация?? т.е. присваивание полям значений или создание объекта?
И то и другое... Вот, например, при инициализации базового типа выделяется память под строку, а все остальные - передают в этот базовый тип результат своей инициализации: Прикрепленный файл  oop_01.pas ( 920 байт ) Кол-во скачиваний: 721


Где-нибудь цепочка Init-ов прервется - будет разыменование нулевого указателя, ошибка... Я надеюсь, понятно, что в конструкторе TA2, например, если какое-то дополнительное условие не выполняется, я могу поменять строку с 'no error' на любую другую? И в конструкторе TB тоже. И даже в TA...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Client   ООП   15.02.2009 16:00
volvo   Ну, ты же здесь был: ООП. Объектно-ориентированное...   15.02.2009 16:19
Client   В наследовании есть родитель и потомок, где потомо...   15.02.2009 16:27
volvo   Не путай теплое с мягким... Наследование - это нео...   15.02.2009 17:01
Client   O_o незнал.procedure proc(var obj: ta); begin ob...   15.02.2009 17:16
volvo   Это вызов метода из непосредственного родителя... ...   15.02.2009 17:37
Client   uses crt; type ta = object constructor init;...   15.02.2009 18:34
volvo   Да, работает... Только некорректно это. При инициа...   15.02.2009 18:40
Client   Инициализация?? т.е. присваивание полям значений и...   15.02.2009 18:43
volvo   И то и другое... Вот, например, при инициализации ...   15.02.2009 19:37
Client   УРЯЯЯЯ!!! я понял) тут мы просто испол...   16.02.2009 16:22
volvo   Если ты про конструктор - то я тебе еще больше ска...   16.02.2009 19:04
Client   Вроде понял) Спасибо за ответы!   16.02.2009 20:29
fedyafed   Листинг программы от Дата 15.02.2009 17:01 содержи...   6.02.2011 10:25
volvo   Никак не нужно настраивать, он по умолчанию прекра...   6.02.2011 10:49
Гость   А overload и override компилятор не понимает(. Это...   6.02.2011 11:23


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.07.2025 10:11
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"