Модуль 1. Классы и Объекты Flashcards
два основных элемента ООП
Классы и Обьекты,
Класс это шаблон обьекта, который описывает структуру с помощью свойств и поведение с помощью методов
Обьект это экземпляр класса котрый содержит значения для свойств из шаблона и может выполнять указанные методы
Структура класса
Класс может состоять из констант, свойств и методов
Как создать класс
Для создания класса нужно указать ключевое слово class затем имя класса (имя уникальное, каждое слово начинается с большой буквы), Затем на следующей строке открываются фигурные скобки, внутри указываются свойства и методы класса
class Product
{
public string $name = ‘Плюшевый медведь’;
public int $price = 100;
}
Свойства класса
Аналогичны обычным переменным только привязанные к классу. Перед названием свойства указывается модификатор доступа который определяет доступ к свойству вне класса или обьекта (public private).
Дальше указывается тип свойства и имя после присваивается значение переменной или значение по умолчанию
public string $name = ‘Плюшевый медведь’;
!свойствам можно указывать только статичные значения
Создание обьекта
Чтобы создать экземпляр класса нужно использовать слово new затем имя класса и указать параметры(при их наличии в круглых скобках) и присвоить это все переменной
$example = new ClassName();
Получение значение свойств обьекта
Для доступа к значению свойство класса или метод должны быть публичными. Для получения значения нужно указать имя экземпляра класса и через -> указать имя свойства
$teddyBear->name
Переопределение свойств экземпляра
Можно но лучше не нужно, а так можно добавить новое значение через обращение к свойству
$teddyBear->name = ‘tod’;
Как создать переиспользуемый класс
Для переиспользования свойства класса должны принимать разные значения из переданных параметров,
Параметры передаются как с обычной функцией при создании экземпляра класса
$example = new ClassName(str var1, int var2);
Для инициализации свойств переданными параметрами нужно использовать специальную функцию класса __construct после списка свойств класса
…
..
public function __construct (str $var1, int $var2)
{
$this->$var1 = $var1;
$this->$var2 = $var2;
}
Чтобы установить значение свойсва используется обращение через указатель $this который указывает на сам экземпляр класса