update : 2015.11.03
php.shukuma.com검색:
|
static 키워드Tip
이 문서에서는 정적 메서드와 프로퍼티를 정의할수 있는 static 키워드의 사용법을 설명합니다. static 키워드는 또한 정적 변수를 정의 와 늦은 정적 바인딩에 사용될 수 있습니다. 각각의 static 이 의미하는바는 문서를 참조하시기 바랍니다. 클래스의 메서드와 프로퍼티를 static으로 선언한다는 것은 해당 클래스의 인스턴스화가 필요없이 해당 프로퍼티와 메서드에 접근가능 하게함을 의미합니다. static 키워드로 선언된 프로퍼티는 인스턴스화된 클래스의 객체로 접근할 수 없습니다.(하지만 static 메서드는 가능합니다.) PHP 4 와의 호환을 위해서, 접근 지정자 선언이 사용되지 않았다면, 프로퍼티와 메서드는 public 으로 선언된것으로 다루게 됩니다. static 메서드가 인스턴스객체의 필요없이 호출이 가능한 이유로, 의사변수 $this 는 static으로 선언된 메서드안에는 존재하지 않습니다. 정적 프로퍼티는 객체의 -> 연산자를 통한 접근을 할수 없습니다.
non-static 메서드의 정적인 호출은 다른 PHP 의 정적 변수처럼, static 프로퍼티는 리터털이나 상수로만 초기화 될수 있습니다; 표현식은 허용되지 않습니다. (예를들어)정수나 배열로 static 프로퍼티를 초기화 할수 있지만, 다른변수나, 함수의 리턴값, 객체로는 초기화할수 없습니다. PHP 5.3.0 이후에서는 변수를 사용하여 클래스를 참조할 수 있습니다. 변수의 값은 (e.g. self, parent and static) 키워드로 지정될 수 없습니다. Example #1 정적 프로퍼티 예제
<?php Example #2 정적 메서드 예제
<?php |