>백엔드 개발 >PHP 튜토리얼 >PHP 특성 속성 및 기본 사용법

PHP 특성 속성 및 기본 사용법

不言
不言원래의
2018-04-13 17:49:511719검색

이 글은 PHP의 Traits 속성과 기본 사용법을 소개합니다. 필요한 친구들이 참고할 수 있도록 공유합니다

1. Traits란 무엇입니까


PHP 5.4의 Traits의 실제 목적은 다음과 같습니다. 이 기능은 PHP의 단일 상속 문제를 해결하고 코드 재사용을 구현하기 위한 것입니다.
특성은 다양한 클래스에서 호출할 수 있는 메서드 집합으로 이해될 수 있지만 특성은 클래스가 아닙니다! 인스턴스화할 수 없습니다.
PHP는 단일 상속 언어이므로 Java처럼 코드 재사용을 달성하기 위해 하나의 클래스에서 여러 기본 클래스를 확장할 수 없습니다. 이제 Traits를 사용하면 개발자가 여러 다른 클래스에서 코드 재사용을 구현할 수 있습니다.

특성과 클래스는 코드의 복잡성을 줄이고 다중 상속 문제를 방지하기 위해 의미론적으로 정의됩니다.

2. Traits의 특징

1. 예시 참고 링크:

https://segmentfault.com/a/1190000002970128

2. 특징 참고 링크:

https://blog.csdn.net/longlongmylove/ Article/details/7521379

3. 상속 VS 다형성 VS Trait

참조 링크: http://www.jb51.net/article/105579.htm

3 저는 항상 느꼈습니다. laravel에서의 사용은 매우 편리하며 캡슐화된 클래스의 메서드를 직접 호출할 수 있습니다. 오늘 한 블로거의 글을 보고 laravel이 Traits 기능을 광범위하게 사용하고 있다는 것을 깨달았습니다.

总结:
1、trait本质上还是一个类
2、接口(interface)规定了方法的定义, trait规定了方法的实现
3、可以认为A类D类等等其他类在需要ccc方法的时候包含了trait

요약하면 특성은 PHP가 다중 상속을 구현하기 위한 절충 방법입니다. 이를 "가짜 다중 상속"이라고 부르겠습니다. 하나의 클래스(클래스 A)에 다른 클래스 E(특성)가 포함되어 있다고 볼 수 있으며 최종 목표는 다음과 같습니다. 는 코드 재사용을 달성하기 위한 것입니다.

참조 링크: https://zhuanlan.zhihu.com/p/31154445

일반적으로 특성의 출현은 우리의 개발을 크게 촉진합니다. 결국 특성이 없는 것은 정말 불편합니다. 특히 대규모 프로젝트의 경우 다중 상속이 가능합니다. 단지 "의사 상속"이라 하더라도 아무것도 없는 것보다는 낫습니다. 이미 많은 선배님들께서 잘 요약해 주셨는데요. 여기에 메모해 두겠습니다.

end

관련 권장 사항:

php

특성을 사용하여 PHP 코드 재사용을 달성하는 방법

에서 특성 재사용 메커니즘 사용에 대한 자세한 설명

위 내용은 PHP 특성 속성 및 기본 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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