머리말
OOP
저는 오랫동안 PHP를 공부해왔는데, PHP/정적 속성과 정적 메서드/유닛의 추상 클래스와 추상 메서드를 정리하겠습니다. PHP에서는 Advantage 모드(단형 모드)/직렬화 및 역직렬화(직렬화 및 역직렬화).
1 PHP의 추상 클래스 및 추상 메서드 |
1. static ① 속성과 메서드는 각각 정적 속성과 정적 메서드로 수정될 수 있으며, 클래스 속성과 클래스 메서드라고도 합니다. ② 정적 속성과 정적 메서드는 클래스 이름을 사용하여 직접 호출할 수 있습니다. "클래스 이름:: $ 정적 속성", "클래스 이름: 정적 메서드()" person :: $ sex: say(); 객체 이전에 생성됨 ④ 정적 메서드에서는 비정적 속성이나 메서드를 호출할 수 없습니다. . 속성 메서드, 아직 인스턴스화가 생성되지 않음) ⑤ 클래스에서는 self 키워드를 사용하여 클래스를 참조할 수 있습니다. 이름. Er Class Person { Static $ Sex = "Nan"; Function say() { echo Self :: $ sex }} ⑥ Static 속성은 공유됩니다. 즉, 많은 새로운 객체도 동일한 속성을 공유합니다. 2. final ① 최종 수정 클래스, 이 클래스는 최종 클래스이므로 상속할 수 없습니다. ② 최종 수정 메서드, 이 메서드는 최종 메서드이므로 재정의할 수 없습니다. ③ final은 속성을 수정할 수 없습니다. ㅋㅋㅋ (Define() 문과 유사하게 const의 const 키워드 선언은 $와 함께 가져올 수 없으며 모두 대문자입니다! 상수는 한번 선언되면 변경할 수 없습니다. 호출할 때는 클래스 이름 Person::constant를 사용하여 static과 동일합니다. ㅋㅋㅋ ] 3. -> 객체($this new로 생성된 객체)는 멤버 속성과 멤버 메서드를 사용합니다. 4. : : ① parent 키워드를 사용하여 상위 클래스에서 동일한 이름의 메서드를 호출합니다. parent::say(); ② 클래스 이름(및 self)을 사용하여 정적 속성, 정적 메서드 및 클래스의 상수. ㅋㅋㅋ ~ 심플렉스 모드는 단일형 모드라고도 합니다 클래스는 하나의 객체 인스턴스만 가질 수 있음을 보장할 수 있습니다. ㅋㅋㅋ ② 객체를 얻기 위한 외부 방법을 제공합니다. 메소드에서 객체가 비어 있는지 확인하고, 비어 있으면 객체를 생성하여 반환하고, 비어 있지 않으면 직접 다시 넣습니다. ③ 인스턴스 객체의 속성과 과거 객체의 메소드가 일치해야 합니다. 공전. ④ 이후에는 우리가 제공하는 정적 메소드만을 사용하여 객체를 생성할 수 있습니다. $s1 = Singleton::getSingle(); 1 class Singleton{ 2 private static $single=null; 3 private function __construct(){} 4 static function getSingle(){ 5 if(!self::$single){ 6 self::$single = new self(); 7 } 8 return self::$single; 9 }10 function __destruct(){11 echo "啊,我被销毁了。";12 }13 }14 15 $s1 = Singleton::getSingle();16 $s2 = Singleton::getSingle();17 $s3 = Singleton::getSingle();18 $s4 = Singleton::getSingle();단일 수익 모드 심플 코드
9. __clone(): clone 키워드를 사용하여 객체를 복제할 때 자동으로 호출됩니다. 새로 복제된 객체를 초기화하고 복사하는 함수입니다.
10. __sleep(): 객체가 직렬화되면 자동으로 호출됩니다. 값이 직렬화 가능한 속성인 배열을 반환합니다. 11. __wakeup(): 객체가 역직렬화되면 자동으로 호출됩니다. 새로 생성된 객체를 역직렬화하려면 초기화하고 복사하세요. 12. __autoload(): 함수는 클래스 외부에서 선언되어야 합니다. 라이브 클래스를 인스턴스화할 때 자동으로 호출됩니다. 인스턴스화된 클래스 이름을 전달하면 해당 클래스 파일이 클래스 이름을 사용하여 자동으로 로드될 수 있습니다. 공부할 때 잘못된 부분이 있을 수 있으며, 비판은 환영합니다. 매일 조금씩 반성하고 복습하고 얻어가세요--------- 더 나은 자신을 기대합니다 |
위 내용은 PHP에서 일반적으로 사용되는 몇 가지 방법에 대한 지식 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!