Планирование уроков на учебный год (по учебнику К.Ю. Полякова, Е.А. Еремина, полный углублённый курс, по 4 часа в неделю)



Урок 88
Что такое ООП? Объекты и классы
(§46. Что такое ООП? §47. Объекты и классы)






Содержание урока

§46. Что такое ООП?
§47. Объекты и классы

Введение

Объектно-ориентированный анализ

Метод

Вопросы и задания

Задачи


§47. Объекты и классы


Метод


Теперь рассмотрим объекты класса Машина. Их важнейшие свойства — координаты и скорость движения. Для упрощения будем считать, что:

• все машины одинаковы;
• каждая машина движется по дороге слева направо с постоянной скоростью (скорости разных машин могут быть различными);
• по каждой полосе движения едет только одна машина, так что можно не учитывать обгон и переход на другую полосу;
• если машина выходит за правую границу дороги, вместо неё слева на той же полосе появляется новая машина.

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

За координаты машины можно принять расстояние X от левого края рассматриваемого участка шоссе и номер полосы Y (натуральное число — рис. 7.5). Скорость автомобиля V в нашей модели — неотрицательная величина.

Рис. 7.5

Рис. 7.5

Теперь рассмотрим поведение машины.

В данной модели она может выполнять всего одну команду — ехать в заданном направлении (назовём её «двигаться»). Говорят, что объекты класса Машина имеют метод «двигаться» (рис. 7.6).

Рис. 7.6

Рис. 7.6

Метод — это процедура или функция, принадлежащая классу объектов.

Другими словами, метод — это некоторое действие, которое могут выполнять все объекты класса.

Пока мы построили только модели отдельных объектов (точнее, классов). Чтобы моделировать всю систему, нужно разобраться, как эти объекты взаимодействуют. Объект-машина должен уметь «определить», в каком месте дороги он находится. Для этого машина должна обращаться к объекту «дорога», запрашивая длину дороги (см. стрелку на рис. 7.7).

Рис. 7.7

Рис. 7.7

Схема на рис. 7.7 определяет:

• свойства объектов;
• операции, которые они могут выполнять;
• связи (обмен данными) между объектами.

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

Следующая страница Вопросы и задания



Cкачать материалы урока






Наверх