>백엔드 개발 >PHP 문제 >PHP에서 최종과 정적의 차이점은 무엇입니까

PHP에서 최종과 정적의 차이점은 무엇입니까

藏色散人
藏色散人원래의
2021-09-16 09:32:221407검색

PHP에서 final과 static의 차이점: 1. static은 정적 변수입니다. 정적 변수는 로컬 함수 도메인에만 존재하지만 프로그램 실행이 이 범위를 벗어나면 해당 값이 손실되지 않습니다. 2. Final은 다음 용도로 사용됩니다. 함수 객체 지향 사용에 속하며, 이 함수는 한 번 사용하면 변경하거나 오버로드할 수 없습니다.

PHP에서 최종과 정적의 차이점은 무엇입니까

이 기사의 운영 환경: Windows 7 시스템, PHP 버전 7.1, Dell G3 컴퓨터

php

static에서 final과 static의 차이점은 static 변수이며 로컬에만 존재합니다. 함수 도메인이지만 프로그램 실행이 이 범위를 벗어나도 해당 값은 손실되지 않습니다.

예를 들어 누적 함수 호출 수를 계산하는 데 사용할 수 있습니다.

<?PHP
function Test()
{
static $w3sky = 0;
echo $w3sky;
$w3sky++;
}
?>

정적 키워드

이 페이지에서는 정적 메서드와 속성을 정의하기 위해 정적 키워드를 사용하는 방법을 설명합니다. static은 정적 변수와 후기 정적 바인딩을 정의하는 데에도 사용할 수 있습니다. 정적이 어떻게 사용되는지 보려면 위 페이지를 참조하세요.

클래스 특성이나 메서드를 정적으로 선언하면 클래스를 인스턴스화하지 않고도 직접 액세스할 수 있습니다. 정적 속성은 인스턴스화된 클래스의 개체를 통해 액세스할 수 없습니다(그러나 정적 메서드는 가능함).

정적 메서드

정적 메서드에서는 개체 호출이 필요하지 않으므로 정적 메서드에서는 의사 변수 $this를 사용할 수 없습니다.

정적이 아닌 메서드를 정적으로 호출하면 오류가 발생합니다.

PHP 8.0.0 이전에는 비정적 메서드를 정적으로 호출하는 것이 더 이상 사용되지 않으며 E_DEPRECATED 수준 경고가 발생했습니다.

fainal은 함수에 사용되며 객체 지향 사용에 속하며 한 번 사용하면 이 함수를 변경하거나 오버로드할 수 없습니다.

PHP 5에는 새로운 최종 키워드가 추가되었습니다. 상위 클래스의 메서드가 final로 선언되면 하위 클래스는 해당 메서드를 재정의할 수 없습니다. 클래스가 final로 선언되면 상속될 수 없습니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 최종과 정적의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.