- •1. Ссылочные типы данных.
- •2. Оператор new.
- •3. Сортировка данных в динамической памяти.
- •4. Файлы с прямым доступом.
- •5. Нетипизированные файлы.
- •6. Особенности работы с типами в tp. Явные преобразования типов.
- •12. Объектовый тип. Основные понятия.
- •13. Наследование и переопределение в объектовых типах.
- •14. Виртуальные методы в объектах.
- •15. Конструкторы и деструкторы.
- •16. Скрытые поля и методы.
- •17. Раздел files основного меню turbo-Паскаль 7.0.
- •19. Библиотека crt turbo-Паскаля.
- •20. Библиотека dos turbo-Паскаля.
- •21. Библиотека system turbo-Паскаля.
- •22. Раздел edit основного меню turbo-Паскаль 7.0.
- •23. Раздел run основного меню turbo-Паскаль 7.0.
- •24. Классификация типов данных.
- •25. Перечислимые типы данных. (На самостоят. Рассмотрение)
- •26. Ограниченые типы данных. (На самостоят. Рассмотрение)
- •27. Регулярные типы данных.
- •28. Многомерные массивы.
- •29. Комбинированные типы данных.
- •30. Оператор with.
- •31. Записи с вариантами.
- •32. Множественные типы данных.
- •33. Операции над данными множесвенного типа.
- •34. Файловые типы данных.
- •35. Текстовые файлы.
- •36. Процедуры.
- •37. Функции.
- •38. Параметры процедур и функций.
- •39. Локальные и глобальные объекты в процедуах и функциях.
- •46. Внутреннее представление чисел с плавающей точкой.
- •47. Реализация алгоритма сортировки с применением метода "часового".
- •48. Сортировка методом "пузырька".
- •49. Алфавит языка, имена, числа, строки.
- •50. Структура программы.
- •51. Тип Integer.
- •52. Тип Real.
- •53. Тип Boolean.
- •54. Char.
- •55. Описательная часть программного блока.
- •56. Процедуры ввода-вывода.
- •57. Оператор присваивания.
- •58. Условный оператор.
- •59. Оператор варианта.
- •60. Оператор цикла с перечислением.
- •61. Оператор цикла с предусловием.
- •62. Оператор цикла с постусловием.
12. Объектовый тип. Основные понятия.
Объектовый тип в паскале похож на комбинированный тип (класс).
type
point=object
x,y:integer;
visible:Boolean;
...
Объектовый тип может содержать подпрограммы. Подпрограммы, которые описаны в объектовом типе(классе) – это методы этого типа(класса). При описании класса задаётся описание полей, а потом описание методов:
type point=object
x.y:integer;
visible:Boolean;
procedure create(a,b:integer);
procedure switchon;
procedure switchoff;
procedure move(dx,dy:integer);
function getx:integer;
function gety:integer;
end;
Задание значений полям только через методы этого класса.
Объединение в одном понятии информации о некотором реальном объекте – прототипе (в примре это точка). Из всех возможных операций над этим объектом делает объект делает объектовый тип замкнутой самодостаточной сущностью содержащей все необходимые знания о конкректном элементе прикладной области. Эта структура объектового типа называется инкапсуляцией.
13. Наследование и переопределение в объектовых типах.
Наследование является вторым основным важным классом, который позволяет при создании нового класса использовать в качестве основы описанный ранее класс.
Объектно-ориентированный подход позволяет создать новый класс как потомок ранее описанного класса.
type circle=object=(point);
Класс, созданый на основе предыдущего, называется потомок. Класс, на основе которого создан новый класс, называется предок.
Класс потомок автоматически получает все поля и методы своего предка.
circle=object=(point);
radius:integer;
procedure create(a,b,r:integer);
procedure switchon;
procedure switchoff;
function getr:integer;
end;
Замена одного из метода другим методом называется переопределение метода. Переопределять можно только методы, поля нельзя.
one point:=onecircle;
onecircle:=one point;
Присваивать можно только от предка к потомку.
14. Виртуальные методы в объектах.
Виртуальный метод (виртуальная функция) — в объектно-ориентированном программировании метод (функция) класса, который может быть переопределён в классах-наследниках так, что конкретная реализация метода для вызова будет определяться во время исполнения. Таким образом, программисту необязательно знать точный тип объекта для работы с ним через виртуальные методы: достаточно лишь знать, что объект принадлежит классу или наследнику класса, в котором метод объявлен.
Виртуальные методы — один из важнейших приёмов реализации полиморфизма. Они позволяют создавать общий код, который может работать как с объектами базового класса, так и с объектами любого его класса-наследника. При этом, базовый класс определяет способ работы с объектами и любые его наследники могут предоставлять конкретную реализацию этого способа.
Виртуальными должны быть описаны те методы, которые вызываются другими методами.
Для того, чтобы виртуальные методы заработали, необходимо до первого обращения к любому виртуальному методу класса выполнить специальный метод, который называется конструктором.
constructor circle.create
Последним методом, который обрабатывается должен быть деструктор.
destructor …