#php
Для чего используется static в операторе :: ? return static::Find($id);
Ответы
Ответ 1
Ключевое слово static используется для позднего статического связывания, т.е. в классах унаследованных от этого можно будет определить свой статический метод Find() и будет вызываться именно он, а не метод текущего класса. Если вы вместо static укажите self, то будет вызван статический метод Find() текущего класса, даже если в унаследованных классах вы определите собственные статические методы Find(). Так как статические методы принадлежат не объектам, а классам - приходится разруливать ситуацию с их переопределением при помощи отдельных ключевых слов.Ответ 2
С помощью '::' мы обращаемся к статическим методам класса. Фишка в том, что, обращаясь к статической функции, мы не инициализируем объект класса.
Комментариев нет:
Отправить комментарий