/*
-------------------------------- ----------------------------------
| = 이 글은 Haohappy<
| = 해당 장의 클래스 및 개체에 대한 참고 사항
| = 개인적인 경험을 바탕으로 작성되었습니다.
| = 불필요한 문제를 피하기 위해 재인쇄하지 마십시오. 감사합니다
| 비판과 수정을 환영하며, 모든 PHP 애호가들과 함께 발전하기를 바랍니다!
| = PHP5 연구 센터: http://blog.csdn.net/haohappy2004
--------- ----- ------------------- ----- ---------------
*/
섹션 2 - PHP5의 객체 모델
PHP5는 단일 상속, 제한된 액세스를 가지며 오버로드된 객체 모델은 클래스 간의 상위-하위 관계에 대해 자세히 설명합니다. 또한 PHP는 속성과 메서드에 대한 제한된 액세스를 지원하여 외부 클래스의 액세스를 허용하지 않습니다. 하위 클래스가 상위 클래스의 멤버를 오버로드할 수 있습니다.
//haohappy 참고: PHP4에는 private이 없으며, public.private만 더 나은 캡슐화 구현에 적합합니다.
PHP5의 객체 모델은 객체를 객체로 간주합니다. 다른 데이터 유형과 달리 참조로 전달됩니다. PHP는 참조로 객체를 명시적으로 전달하고 반환할 것을 요구하지 않습니다. 핸들 기반 객체 모델은 PHP5입니다. PHP의 가장 중요한 새로운 기능입니다.
보다 직접적인 개체 모델을 사용하는 핸들 기반 시스템에는 효율성 향상, 메모리 사용량 감소, 유연성 향상 등의 추가 이점이 있습니다.
PHP의 처음 몇 년 동안 이 버전에서는 스크립트가 개체를 복사합니다. 이제 PHP5는 핸들만 이동하므로 시간이 덜 걸립니다. 객체 시스템이 복잡해지기 때문에 스크립트 실행 효율성이 향상됩니다. 복사는 더 적은 메모리를 차지하고 다른 작업에 더 많은 메모리를 남겨두는 것을 의미하며, 이는 효율성도 향상시킵니다.
//haohappy 참고: 핸들을 기반으로, 즉 두 객체가 동일한 메모리를 가리키면 복사 작업이 줄어들 뿐만 아니라 작업도 줄어듭니다.
Zand Engine 2는 더 큰 유연성을 가지고 있습니다. 행복한 개발은 객체가 파괴되기 전에 클래스를 파괴 실행하는 것입니다. 이는 또한 참조가 없을 때 PHP가 명확하게 알 수 있도록 메모리를 활용하는 데 매우 좋습니다. 객체에 추가하고 사용 가능한 메모리를 다른 용도로 할당합니다.
위 내용은 p5의 내용을 포함하여 p5의 두 번째 섹션인 PHP5의 객체 모델을 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.