Próbuję poprawić moją wiedzę o OOP w PHP i badam abstrakcyjne klasy i interfejsy.Real World Przykłady zaawansowanych funkcji OOP dla PHP
Czego nauczyłem
- Obaj są zajęcia, które nie mogą być instancja siebie, ale może być olny Extended (realizowany w przypadku interfejsów)
- Klasy abstrakcyjne dostarczenie metod i właściwości dla innych klas które je przedłużają.
- Jeśli klasa używa metody abstrakcyjnej, wówczas sama klasa musi również być abstrakcyjna.
- Jeśli w klasie abstrakcyjnej zdefiniowana jest metoda abstrakcyjna, wszystkie klasy potomne muszą zdefiniować szczegóły tej metody. Metody niezdefiniowane jako abstrakcyjne można stosować w taki sam sposób, jak metody normalne.
- Interfejsy określają, jakie metody musi posiadać klasa, która ją implementuje. Funkcjonalność metod nie jest zdefiniowana w interfejsie, interfejs po prostu oferuje listę metod, które muszą być zawarte w klasie potomnej.
- Interfejs nie definiuje żadnych właściwości.
- Klasy mogą realizować dowolną liczbę interfejsów, jak chcą, ale muszą zdefiniować metodę dla każdego z interfejsów realizują one
myślę, że obejmuje podstawy. Dodaj do tego, jeśli uważasz, że jest coś, co przegapiłem.
Chciałbym wiedzieć, czy istnieją rzeczywiste przykłady implementacji tych klas, zwłaszcza klasy interfejsu. Czy ktoś wie o jakichkolwiek aplikacjach open source, które go używają, które mogę przeglądać, aby lepiej je zrozumieć i zobaczyć, gdzie i kiedy są one efektywnie wykorzystywane? Natknąłem się na przykłady książek, które wykorzystują zwierzęta, które nie udowadniają wagi tych klas.
Ponadto, strona wiki ZF2 w toku: http://framework.zend.com/wiki/display/ZFDEV2 – joksnet
@Gordon: szukaj na przykład tego: http://www.php.net/manual/en /class.splheap.php – vartec
@Gordon, zredagowano odpowiedź – vartec