Выше был создан класс Animal, но для того, чтобы его использовать, следует вначале создать объект данного класса. Обычные переменные в зависимости от своего содержимого имеют определенный тип данных.
Класс также является типом данных, и объект класса может быть сохранен в переменной.
Для создания нового объекта заданного класса используется оператор new.
Этот оператор требуется только при создании объектов, а не для обычных скалярных типов данных. Например, для создания объекта класса Animal и сохранения его в переменной Slion используется следующий синтаксис (класс Animal описан в предыдущем разделе):
$lion = new Animal;
После создания объекта доступ к его методам обеспечивает оператор —>.
Например, для присвоения имени может использоваться метод setname:
$lion->set_name ("Бонифаций");
Для того, чтобы считать присвоенное имя, используется метод getname,
как показано ниже:
echo "Имя нового льва: ", $lion->get_name (), ".";
Доступ к свойствам класса осуществляется точно также, как и к его методам.
|
|
Ниже приведен пример доступа к свойству name:
echo "Имя нового льва: ", $lion->name (), ".";
В результате выполнения этого фрагмента кода будет отображена строка
Имя нового льва: Бонифаций
Оператор -> открывает доступ как к методам класса, так и к его свойствам.
Хорошим тоном в ООП является присвоение значений свойствам класса при помощи соответствующих методов, в этом случае в зависимости от конкретных данных могут быть осуществлены дополнительные действия. Такие методы называются методами доступа. Например, следующий метод ограничивает длину имени животного 10 символами:
function set_name($text)
{
if (strlen(Stext) <= 10)
{
$this->name = $text;
}
}