Houston, we have a problem.

Статические члены класса


Воспользоваться членами и методами можно и без объявления объекта класса,
объявив их статическими с помощью ключевого слова static, что делает их
доступными в любой момент.




Статические методы класса


Статическими можно объявлять не только члены, но и методы класса. Для
объявления статического метода также используется ключевое слово static,
а для обращения к методу - оператор разрешения области видимости :: .

Константы класса


Наряду с членами классы могут содержать константы, которые определяются
при помощи ключевого слова const.


Finаl-методы клаccа


Методы, объявленные в ба­зовом классе с ключевым словом final,
не могут быть перегружены в производном классе.

Finаl-классы


Класс, объявленный при помощи ключевого сло­ва final, не может иметь наследников.

Клонирование объекта


Для создания копии текущего объекта используется специальная операция - клонирование.
Оно выполняется при помощи ключевого слова clone,
кото­рое располагается непосредственно перед объектом клонирования

Управление процессом клонирования.


Метод __clone() вызывается, когда выполняется клонирование объекта.


Сериализация объектов


Для сохранения объекта в формате, который позволял бы его восстанавли­вать
впоследствии, часто прибегают к сериализации: переводу объекта в
строку при помощи функции serialize ().

Такая строка может быть сохра­нена в файл или базу данных,
после чего сохраненный объект можно полу­чить при помощи обратной функции unserialize ().

class.cls.php


использование



Управление сериализацией.
Методы __sleep() и __wakeup()



Два специальных метода, которые могут быть перегружены в классе: метод __sleep(),
который вызывается, когда объект подвергается сериализации при помощи
функции serialize (); и метод __wakeup(), который вызывается при восстановлении
объекта при помощи функции unserialize(). Оба метода не при­нимают никаких параметров.

__sleep()


class.user.php


использование


__wakeup()


class.user.php


@темы: PHP