Co to jest klasa abstrakcyjna OOP w PHP?

Co To Jest Klasa Abstrakcyjna Oop W Php



Podstawa „programowanie obiektowe” (OOP) paradygmatem jest pogląd, że „przedmioty” może zawierać zarówno kod, jak i dane. Jeden z głównych elementów programowania obiektowego (OTWARTY) W PHP , popularnym językiem skryptowym, jest użycie klasy abstrakcyjne . W PHP, an klasa abstrakcyjna służy jako model do tworzenia innych klas, ponieważ nie można go utworzyć samodzielnie. W tym artykule omówiono klasy abstrakcyjne” definicji, funkcjonalności i użycia w OOP PHP.

Co to jest klasa abstrakcyjna?

Po pierwsze, ważne jest, aby zrozumieć, czym jest an klasa abstrakcyjna jest w PHP . Mówi się, że klasa, której nie można utworzyć w instancji ani przekształcić bezpośrednio w obiekt, jest abstrakcyjny . Zamiast tego inne klasy, które z niego dziedziczą, używają go jako klasy podstawowej lub nadrzędnej. Klasy abstrakcyjne nie zapewniają określonej implementacji klas pochodnych; raczej przedstawiają ich strukturę i zachowanie. Pozwala to klasom pochodnym na zachowanie własnego charakterystycznego zachowania, przy jednoczesnym zachowaniu podstawowych ram zapewnianych przez klasę abstrakcyjną.

Jako część PHP 'S OTWARTY , klasy abstrakcyjne służą jako sposób na zdefiniowanie podstawowego zbioru cech, które mogą być wspólne dla wielu klas pochodnych. Deweloperzy mogą udostępnić szablon dla klas, które będą dziedziczyć po klasie abstrakcyjnej, tworząc go. Aby upewnić się, że wszystkie klasy pochodne są zgodne z tym samym interfejsem, ten plan służy jako umowa między klasa abstrakcyjna i klasy pochodne. Specyfika implementacji jest pozostawiona każdej podklasie, ale ten interfejs określa wspólne metody, które są niezbędne dla wszystkich podklas. Zmiany wprowadzone w klasie abstrakcyjnej zostaną natychmiast rozpropagowane we wszystkich klasach pochodnych, które jej używają, co pozwala na ponowne wykorzystanie kodu i łatwiejszą konserwację.







Jak działają klasy abstrakcyjne w PHP?

Kiedy słowo kluczowe „abstrakcje”. jest używany do zdefiniowania klasy, PHP jest informowany, że klasa nie może zostać utworzona. Obydwa abstrakcyjny I nieabstrakcyjne metody można znaleźć m.in klasy abstrakcyjne . Abstrakcyjny metody są zdefiniowane za pomocą 'abstrakcyjny' słowa kluczowego i nie dostarczają implementacji – po prostu deklarują sygnaturę metody. Te abstrakcyjne metody muszą być implementowane przez klasy pochodne, które pochodzą od klasa abstrakcyjna . Nieabstrakcyjne Z drugiej strony metody zapewniają domyślną implementację, którą klasy pochodne mogą przesłonić.



Spójrzmy na przykład:





abstrakcyjny klasa Ja {

abstrakcyjny funkcjonować O mnie ( $nazwa , $wiek ) ;

}

klasa Wprowadzenie rozciąga się Ja {

funkcjonować O mnie ( $nazwa , $wiek ) {

Echo 'Nazywam się $nazwa a mój wiek to $wiek ' ;

}

}

$a = nowy Wprowadzenie ( ) ;

$a -> O mnie ( 'Pion' , dwadzieścia jeden ) ;

?>

W powyższym kodzie plik metoda abstrakcyjna w abstrakcyjna klasa nadrzędna „Ja” ma dwa argumenty: „imię” i „wiek”. Klasa potomna „Intro” również definiuje tę samą funkcję z tymi dwoma argumentami, a instrukcja intro jest wyświetlana na ekranie.





Wyjście



Zalety klas abstrakcyjnych w PHP

1: Możliwość ponownego użycia kodu

Klasy abstrakcyjne w PHP mają dużą zaletę: pozwalają na ponowne wykorzystanie kodu. Definiując wspólne zachowanie w pliku klasa abstrakcyjna , możesz uniknąć powtarzania kodu w wielu różnych podklasach. Ułatwia to zarządzanie i konserwację kodu. Klasy abstrakcyjne pomagają również egzekwować spójność i standardy we wszystkich podklasach.

2: Zdefiniuj właściwości abstrakcyjne

W PHP , klasy abstrakcyjne mają przydatną funkcję o nazwie abstrakcyjny nieruchomości. Właściwości te umożliwiają ustawienie określonych wymagań dla podklas. Na przykład, jeśli tworzysz system dla zwierząt, możesz ustawić właściwość abstrakcyjną o nazwie $nazwa który wymaga, aby każda podklasa miała właściwość name. Może to pomóc zapewnić spójną strukturę kodu i ułatwić jego zrozumienie i utrzymanie.

Wniosek

Możliwość zaprojektowania zestawu cech, które mogą być współdzielone przez kilka klas sprawia, że klasy abstrakcyjne przydatne dla programistów. Prowadzi to do częstszego ponownego wykorzystania kodu i łatwiejszej konserwacji, ponieważ wszelkie zmiany dokonane w klasie abstrakcyjnej automatycznie wpływają na wszystkie klasy, które z niej dziedziczą. Przy prawidłowym użyciu klasy abstrakcyjne może znacznie poprawić strukturę i organizację kodu w projekcie zorientowanym obiektowo. Jednak ważne jest, aby używać ich rozważnie, ponieważ nadużywanie ich może prowadzić do zbyt złożonego i trudnego w utrzymaniu kodu.