Упростить работу в ООП помогут статические методы PHP

Упростить работу в ООП помогут статические методы PHP

От автора: недавно пришлось справку брать о составе семьи. Думаете, это так просто? Я и не подозревал, что «бюрократические» коридоры в нашей стране столь длинные и извитые. Они мне чем-то напоминают ООП: здесь тоже, чтобы вызвать метод класса, сначала нужно создать его объект, потом наследовать нужную функцию от родительского…. Хорошо, что есть статические методы PHP, которые позволяют легко обойти всю бюрократию, заложенную в объекто-ориентированном программировании!

Что за методы такие?

Использование статических функций во многом упрощает работу с ООП. Их можно вызывать, не создавая экземпляр класса. То есть, они принадлежат классу, а не объекту. Из-за этого применение внутри них псевдопеременной $this невозможно.

Также стоит учитывать, что изменение статических методов повлечет за собой их изменение во всех остальных экземплярах. Чтобы создать «статику», перед именем функции нужно указать ключевое слово static, а затем идентификатор доступа. Пример:

<?php
    class SampleClass{
    	 public static function f1()
    	 {
    	 	echo"Я статический метод";

    	 	}
}
?>

Упростить работу в ООП помогут статические методы PHP

Обращение к статике

Не зная всех тонкостей синтаксиса, вызвать статический метод PHP будет сложно. Почему? Ну, хотя бы из-за использования для доступа к нему специального оператора. Глядите сами:

<?php
    class SampleClass{
    	 public static function f1()
    	 {
    	 	echo"Я статический метод";

    	 	}
}

    SampleClass::f1();
?>

Упростить работу в ООП помогут статические методы PHP

Но за свою независимость статическим членам класса приходится расплачиваться. Внутри родного класса ни одно свойство, ни один метод не может просто так получить доступ к static. Только через специальное ключевое слово self:

<?php
    class SampleClass{
    	 public static function f1()
    	 {
    	 	return $b="Я статический метод ";

    	 	}

    	 	function f2()
    	 	{
    	 	 return $a=self::f1()."класса SampleClass";
    	 	 }
}

    $obj=new SampleClass();
    echo $obj->f2();

?>

Упростить работу в ООП помогут статические методы PHP

Вот такой маленький получился экскурс в PHP статические методы класса. Используйте это средство с умом, так как любой неправильный вызов «статики» может привести к появлению трудно перехватываемых ошибок.

Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Хотите изучить ООП PHP?

Прямо сейчас посмотрите курс по объектно-ориентированному программированию на PHP (ООП PHP)!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree