정적 메서드
정적 메서드는 클래스의 인스턴스를 먼저 만들지 않고 직접 호출할 수 있다.
static 정적 메서드는 다음 키워드 로 선언된다.
PHP
class ClassName { public static function staticMethod() { echo "Hello World!"; } } ClassName::staticMethod();
이런식으로 사용한다.
예시
예시를 통해 공부하자.
PHP
<?php class greeting { public static function welcome() { echo "Hello World!"; } } greeting::welcome(); ?>
기본 예시
Hello World!추가 정보
클래스는 정적 및 비정적 메서드를 모두 가질 수 있다.
self 정적 메서드는 키워드와 이중 콜론(::) 을 사용하여 동일한 클래스의 메서드에서 액세스할 수 있다.
PHP
<?php class greeting { public static function welcome() { echo "Hello World!"; } public function __construct() { self::welcome(); } } new greeting(); ?>
기본 예시
Hello World!자식 클래스에서 정적 메서드를 호출하려면 자식 클래스 parent 내에서 키워드를 사용된다.
여기서 정적 메서드는 public 또는 protected로 선언한다.
PHP
<?php class domain { protected static function getWebsiteName() { return "maz.kr"; } } class domainW3 extends domain { public $websiteName; public function __construct() { $this -> websiteName = parent::getWebsiteName(); } } $domainW3 = new domainW3; echo $domainW3 -> websiteName; ?>
기본 예시
maz.kr참고
W3C School - PHP OOP - Static Methods
W3C School - PHP Tryit Editor