이 글은 주로 PHP의 정적 속성과 정적 메서드의 차이점에 대한 자세한 설명을 소개합니다. 필요한 친구들은 이를 참고할 수 있습니다
static
public, private, protected
정적 속성
속성이나 메소드 앞에 정적 키 단어는 정적 속성입니다
실제 작업에서는 데이터를 공유할 수 있는 클래스의 여러 객체가 있을 것입니다.
해결책:
1: 클래스 상수는 변경할 수 없습니다.
예:
2: 때로는 데이터를 공유한 후 이 데이터를 공유하는 모든 개체도 변경을 허용해야 합니다.
그래서 static
구문:
예:
팁: 정적 속성은 클래스 상수와 유사(동일)합니다. 유일한 차이점은 클래스 상수는 변경할 수 없고 정적 속성은 변경할 수 있다는 것입니다. 변경되었습니다. 접근방법은 동일합니다.
:: 클래스 상수, 정적 속성, 정적 메서드에만 접근할 수 있습니다
정적 속성은 $로 추가해야 합니다. 상수 이름 앞에 $가 없으므로 접근할 때 전혀 추가할 필요가 없습니다. 클래스 상수. ;- & gt; 정적, 즉 정적 메서드
를 추가하기 전에 $
정적 메서드
를 추가할 필요가 없습니다. 정적 멤버의 액세스: 정적 속성에 대한 액세스:
구문:
클래스 이름:: 정적 속성 이름
클래스 내의 모든 정적 속성에 액세스정적 메서드에 액세스
클래스 외부 액세스 Syn 세금:
정적 메서드는 클래스 공간에 존재합니다.
클래스 이름::메서드 이름(); 정적 속성은 클래스 공간에 저장되고, 비정적 속성은 객체 공간에 저장됩니다.
정적 속성은 클래스 액세스(::)를 통해 액세스되고, 비정적 속성은 액세스됩니다. through object (->)
정적 메소드 접근은 클래스 Access(::)를 통해 이루어지며,
메서드가 객체 공간에 속한 속성을 내부적으로 조작하지 않는 경우에는 정적 메소드로 캡슐화되어 다음을 통해 호출됩니다. 이 방법이 훨씬 빠릅니다.
$이것은 정적 메소드에 나타날 수 없습니다*******
중요 팁:
클래스에 속하는 경우 클래스 이름을 사용하거나 객체에 속하는 경우 self::를 사용하세요. , 개체 이름 또는 $this- >를 사용합니다. (일반적인 메소드를 제외하고 == & gt; 일반 메소드는 클래스 공간에 속하지만 여전히 $ this 또는 객체 이름에서 사용해야 합니다.) 데이터 유형, 부울 값 falseprint 함수
스칼라 데이터 유형만 출력할 수 있고 불리언 값에 대한 출력은 없습니다. false print_r() 스칼라 데이터 유형만 출력할 수 있는 것이 아니라 데이터도 출력할 수 있지만 불리언 값 false에 대한 출력은 불가능합니다. 출력 var_dump($v1,$v2); 주로 프로그래머가 __tostring();을 사용하여 프로그램을 디버깅할 수 있도록 변수에 대한 자세한 정보를 출력합니다. 객체를 에코할 때 이는 구조가 문자열로 변환됨을 의미합니다. __tostring() 매직 메소드는 일부 작업으로 인해 객체가 문자열로 변환될 때 PHP 자동 실행 메커니즘에 의해 호출됩니다.이 방법은 오류(Fatal Eorr 치명적인 오류)를 캡처하고 프롬프트 메시지를 출력하는 것입니다.
예:__clone();
clone();
위 내용은 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되었으면 좋겠습니다.
관련 추천:
위 내용은 PHP의 정적 속성과 정적 메소드의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!