Similar presentations:
Объектно-ориентированное программирование
1. Четвертое занятие
2. ООП
3. Принципы ооп
4. Классы и объекты
5. Класс
6. Простейший класс
CLASS{
}
7. Создание экземпляра (объекта)
(ОБЪЕКТА)NEW
8. Поля класса
CLASSBOOK
{
PUBLIC STRING NAME;
PUBLIC STRING AUTHOR;
PUBLIC INT YEAR;
}
9. Метод для работы с данными
CLASSBOOK
{
…
PUBLIC VOID INFO()
{
CONSOLE.WRITELINE(
$"BOOK {NAME} AUTHOR {AUTHOR}
YEAR - {YEAR}");
}
}
10. Конструктор. предназначен для инициализации переменных
CLASS{
…
КОНСТРУКТОР.
ПРЕДНАЗНАЧЕН
ДЛЯ ИНИЦИАЛИЗАЦИИ
ПЕРЕМЕННЫХ
PUBLIC
BOOK()
{
}
ВАЖНО!
Конструктор не имеет
возвращаемого типа!
Даже не void
PUBLIC
BOOK(STRING NAME, STRING AUTHOR, INT YEAR)
{
NAME
= NAME;
AUTHOR
YEAR
}
}
= AUTHOR;
= YEAR;
11. Статичные поля
ТАКИМ ОБРАЗОМ МЫ МОЖЕМ ОБРАЩАТЬСЯ<НАЗВАНИЕ КЛАССА>.<СТАТИЧЕСКОЕ
К НИМ ТАК:
ПОЛЕ/МЕТОД/СВОЙСТВО>
12. Модификаторы доступа
13. Свойства
14. Определение
PRIVATE INT FIELD;ТОЛЬКО КЛАСС, В КОТОРОМ ЭТО ПОЛЕ ОБЪЯВЛЕНО, ИМЕЕТ ДОСТУП К ДАННОМУ ПОЛЮ
ЧТОБЫ ПРЕДОСТАВИТЬ
PUBLIC INT FIELD
ДОСТУП К ПОЛЮ, МЫ МОЖЕМ ОБЕРНУТЬ ДАННОЕ ПОЛЕ В СВОЙСТВО
{ GET{ RETURN
FIELD;} SET{ FIELD
= VALUE;} }
ВАЖНО ПОНИМАТЬ, ЧТО СВОЙСТВО - ЭТО ПРОСТО ПАРА ОБЫЧНЫХ МЕТОДОВ,
ОФОРМЛЕННЫХ БОЛЕЕ ЭЛЕГАНТНО. НЕ БОЛЕЕ. И КРОМЕ СТРОКИ ДЛЯ ВОЗВРАЩЕНИЯ
ЗНАЧЕНИЯ И ПРИСВАИВАНИЯ МЫ МОЖЕМ ПИСАТЬ ЧТО УГОДНО
15. Авто свойства
АВТО СВОЙСТВАPUBLIC INT FIELD {GET; SET;}
ТАКОЙ КОД САМ СГЕНЕРИРУЕТ
ПРИВАТНОЕ ПОЛЕ ДЛЯ ХРАНЕНИЯ ЗНАЧЕНИЯ И МЕТОДЫ,
КОТОРЫЕ ЭТИМ ПОЛЕМ МАНИПУЛИРУЮТ.
ПОЗЖЕ, ЕСЛИ ПОНАДОБИТСЯ, МЫ СМОЖЕМ ИЗМЕНИТЬ ЛОГИКУ ПОВЕДЕНИЯ ДАННОГО
СВОЙСТВА НА НЕОБХОДИМУЮ НАМ. ПРИ ЭТОМ МЫ НЕ ЗАТРОНЕМ ВНЕШНИЙ КОД, КОТОРЫЙ
ПОЛЬЗУЕТСЯ НАШИМ КЛАССОМ.