Информатика, 6 классОбъекты и свойства4 минуты чтения
Объекты и свойства
Всё, о чём можно рассказать, годится в объекты: мяч, ученик, окно программы, файл на диске. Объектом называют то, что мы рассматриваем как единое целое и о чём можем что-то сказать.
6классСвойство и значение
У каждого объекта есть свойства. Цвет, размер, вес, имя, возраст.
Свойство это вопрос, а значение это ответ на него. Свойство «цвет» у конкретного мяча имеет значение «красный».
Путать их не стоит: свойства одинаковы у всех похожих объектов, а значения у каждого свои.
Объект, свойство, значение
- Мячцвет: красный, диаметр: 22 см
- Ученикимя: Петя, класс: 6
- Файлразмер: 3 Мб, тип: jpg
- Окноширина: 800, заголовок: «Дневник»
Действия
Кроме свойств у объекта есть действия. Мяч катится и отскакивает, окно открывается и закрывается, файл сохраняется и удаляется.
Действия меняют значения свойств. Открыл окно, и свойство «состояние» стало другим.
Так и устроены программы: объекты хранят состояние, а действия его изменяют.
Свойство
Действие
Отвечает на вопрос «какой»
Отвечает на вопрос «что делает»
Цвет, размер, имя
Открыть, посчитать, сохранить
Хранит значение
Меняет значение
У окна: ширина
У окна: свернуться
Класс объектов
Объекты с одинаковым набором свойств собирают в класс. Класс это описание, а не сам объект.
«Ученик» это класс: у каждого есть имя, фамилия, класс и оценки. Петя и Маша это объекты этого класса, и значения у них разные.
Такой приём экономит силы. Достаточно описать класс один раз, и дальше делают сколько угодно объектов по образцу.
Как описать класс
- 1Реши, что за объекты собираешь
- 2Выпиши свойства, общие для всех
- 3Проверь, что у каждого объекта эти свойства есть
- 4Добавь действия, которые они умеют
- 5Создавай объекты, подставляя значения
Объект внутри объекта
Свойством объекта может быть другой объект. У класса «школа» есть свойство «директор», а его значение это объект класса «человек».
Так строятся сложные описания. Комната состоит из мебели, мебель из деталей.
Разбирать такое удобно деревом. Наверху целое, внизу части.
Объекты в таблице
Таблица и объекты устроены одинаково. Строка это объект, столбец это свойство, ячейка это значение.
Поэтому список учеников с оценками легко превращается в набор объектов и обратно. Именно так программы хранят данные.
Отсюда и требование к таблицам из прошлых уроков: один столбец, одно свойство.
Четыре объекта класса «ученик»
| Имя | Класс | Рост, см | Любимый предмет |
|---|---|---|---|
| Петя | 6А | 152 | математика |
| Лена | 6А | 148 | биология |
| Марат | 6Б | 155 | физкультура |
| Соня | 6Б | 150 | литература |
Как выбрать свойства
Свойств у любого предмета бесконечно много: у мяча есть и запах, и температура. В описание берут только те, что нужны для дела.
Для магазина у мяча важны цена, размер и цвет. Для урока физкультуры важен вес и упругость.
Поэтому одинаковых описаний не бывает. Сначала задача, потом свойства.
Состояние объекта
Все значения свойств вместе называют состоянием объекта. У окна это положение, размер и то, свёрнуто ли оно.
Программа только и делает, что меняет состояния. Нажал кнопку, поменялось значение одного свойства, экран перерисовался.
Состояние удобно сохранять целиком. Игра, записавшая положение всех объектов, назавтра продолжится с того же места.
Одинаковые и тождественные
Два мяча могут иметь одинаковые значения всех свойств и всё же оставаться разными объектами. Потерял один, второй от этого не пропадёт.
Поэтому объектам дают признак, по которому их различают: номер, имя, идентификатор. В классном журнале это фамилия, в магазине штрих-код, в базе данных номер записи.
Двух учеников с одинаковой фамилией различают по этому номеру, а не по свойствам.
Наследование
Классы бывают родственными. «Легковой автомобиль» и «грузовик» это разновидности класса «автомобиль», и общие свойства описывать заново не нужно.
Достаточно сказать, что новый класс берёт всё от старого и добавляет своё. У грузовика появится грузоподъёмность, а колёса и двигатель достанутся от предка.
Такой приём называют наследованием, и на нём держится половина современных программ.
Зачем это программисту
Программа почти всегда работает с объектами: окнами, кнопками, записями в базе. У каждого есть свойства и действия, и вся работа сводится к их изменению.
Поняв это на мячах и учениках, легко понять и на кнопках.
Про упрощённое описание читай урок «Модель». Про таблицы есть урок «Таблица».
Проверь себя: «Длина» и «120 сантиметров»: где здесь свойство, а где значение?
«Длина» это свойство, оно есть у всех подобных объектов. «120 сантиметров» это значение, и у другого объекта оно будет иным.
Короткие ответы
- Чем свойство отличается от действия?
- Свойство описывает, каков объект, а действие говорит, что он умеет. У мяча цвет это свойство, а «катиться» это действие.
- Может ли у объекта быть свойство без значения?
- Может, и это обычное дело. У новой книги свойство «дата прочтения» пока пустое, но само свойство существует.