Объектно-ориентированное программирование на языке Перфолента.NET

Материал из ТХАБ.РФ
Версия от 21:02, 12 сентября 2020; Админ (обсуждение | вклад) (Определение Класса)

Перейти к: навигация, поиск
'Показать Содержание Описание языка Перфолента.NET'

Синтаксис языка Перфолента

2.1 Переменные. Объявление переменных, инициализация и их использование

2.2 Типы данных в языке Перфолента

2.3 Массивы. Создание массивов, заполнение данными, обращения к элементам и другие операции с массивами

2.4 Структура программы на языке Перфолента.Net

2.5 Условный оператор Если

2.6 Циклы в языке Перфолента

2.7 Оператор условного выбора блока кода Выбор Для

2.8 Функции и процедуры в языке Перфолента

2.9 Оператор Попытка. Структурная обработка ошибок

2.10 Работа с файлами

2.11 Директивы препроцессора. Выполнение действий перед компиляцией

Практика программирования на языке Перфолента

3.1. Многозадачность и многопоточность в языке Перфолента.Net


Упрощенное описание ООП (Не править в процессе написания)

Для понимания темы Вам необходимо понимать что такое Функция и Процедура. Как их использовать.

Определение Класса

Рассмотрим определение простейшего класса:

Класс Животное
           //тут можно определить свойства и методы работы с классом
КонецКласса

Мы можем создавать экземпляры объектов класса Животное оператором Новый. И несмотря на то, что у этого объекта нет ни каких свойств и методов, ему можно придумать полезное применение. Например, он может быть родителем классов Кошка и Собака.

На заметку: Если для класса не указан родитель, то его родителем является класс Объект, который является корневым родителем всей иерархии классов, используемых в .Net.

Создадим классы Кошка и Собака, указав, что родителем для них является Класс Животное:

Класс Кошка Родитель Животное
           //тут можно определить свойства и методы работы с классом
КонецКласса
Класс Собака Родитель Животное
           //тут можно определить свойства и методы работы с классом
КонецКласса

Теперь покажем, как можно эти классы использовать:


МойКот = Новый Кот // создадим объект МойКот сложного типа - Кот
ПриветЖивотное(МойКот) // передадим объект МойКот 
МояСобака = Новый Собака
ПриветЖивотное(МояСобака)
//где-то ниже определим процедуру
Процедура ПриветЖивотное(МоёЖивотное тип Животное) // процедура принимает объект типа Животное
       Выбор Для МоёЖивотное // оператор выбора Выбор Для
       Когда ЭтоТип Кот
               ВыводСтроки "Привет кот!"
       Когда ЭтоТип Собака
               ВыводСтроки "Привет собака!"
       Иначе
               ВыводСтроки "Привет не известное животное!"
       КонецВыбора
КонецПроцедуры

Как видно из этого примера, процедура ПриветЖивотное() может приветствовать животное любого типа, даже такого, который на момент написания программы еще не существовал. Главное, чтобы не известное животное было потомком класса Животное. А вот классы Кот и Собака этой процедуре известны и приветствие выводится вполне конкретное.

Таким образом, мы извлекли пользу от использования классов не имеющих ни каких свойств и методов (кроме методов родительского типа Объект). Нам пригодилась сама иерархия, согласно которой мы классифицировали объекты.

Умнику на заметку: Отметьте для себя связь терминов Класс и Классификация. Вы должны выстраивать иерархию классов не как попало, а по определенным критериям, что бы можно было сказать, что вы их классифицировали.

Ссылки