Php статичні методи і властивості класів

Методи і властивості можна також використовувати, визначаючи їх як статичні дані класу. Термін статичні означає, що ми можемо отримувати доступ і до властивостей, і до методів в контексті класу, а не об'єкта. Визначити статичні дані класу можна за допомогою ключового слова static:

Статичні методи самі не можуть отримувати доступ до жодних звичайним властивостями класу, тому що такі властивості належать об'єктам. Однак з статичних методів можна звертатися до статичних властивостями.

Щоб звернутися до статичного елементу класу потрібно вказати ім'я класу після якого вказується два двокрапки, а потім ім'я статичного властивості або методу:

З цим синтаксисом ви познайомилися в попередньому розділі. Там ми використовували конструкцію "." В поєднанні з ключовим словом parent. щоб отримати доступ до перевизначених методу батьківського класу.

У коді класу можна використовувати ключове слово parent. щоб отримати доступ до суперкласу, не використовуючи ім'я класу. Щоб отримати доступ до статичного методу або властивості з того ж самого класу (не з дочірнього), можна використовувати ключове слово self. воно використовується для звернення до поточного класу. Тому з-за меж класу ми звертаємося до даних за допомогою імені класу:

А всередині класу можна використовувати ключове слово self:

Тепер розберемо питання про те, навіщо взагалі використовувати статичні методи або властивості. У статичних елементів є ряд корисних характеристик. Вони доступні з будь-якої точки сценарію. Статична властивість доступно кожному примірнику цього класу. Тому можна визначити значення, які повинні бути доступні всім об'єктам даного типу. І нарешті, сам факт, що не потрібно мати екземпляр класу для доступу до його статичному властивості або методу, дозволить уникнути створення примірників виключно заради виклику простий функції. Давайте подивимося як звертатися до методів і властивостей з об'єкта:

Схожі статті