Vad är OOP Abstrakt klass i PHP?

Vad Ar Oop Abstrakt Klass I Php



Grunden för 'objektorienterad programmering' (OOP) paradigm är föreställningen att 'föremål' kan innehålla både kod och data. En av huvudkomponenterna i objektorienterad programmering (ÖPPEN) i PHP , ett populärt skriptspråk, är användningen av abstrakta klasser . I PHP, en abstrakt klass fungerar som en modell för skapandet av andra klasser eftersom det inte kan instansieras på egen hand. Denna artikel diskuterar abstrakta klasser definition, funktionalitet och användning i PHP:s OOP.

Vad är en abstrakt klass?

Först är det viktigt att förstå vad en abstrakt klass är i PHP . En klass som inte kan instansieras, eller göras direkt till ett objekt, sägs vara abstrakt . Istället använder andra klasser som ärver från den det som en bas- eller överordnad klass. Abstrakta klasser tillhandahåller inte specifik implementering av de härledda klasserna; snarare beskriver de sin struktur och beteende. Detta gör det möjligt för härledda klasser att behålla sitt eget distinkta beteende samtidigt som de håller sig till det grundläggande ramverket som den abstrakta klassen tillhandahåller.

Som en del av PHP ’s ÖPPEN , abstrakta klasser tjäna som ett sätt att definiera en bassamling av egenskaper som kan delas av flera härledda klasser. Utvecklare kan tillhandahålla en mall för klasser som kommer att ärva från en abstrakt klass genom att skapa den. För att säkerställa att alla härledda klasser överensstämmer med samma gränssnitt, fungerar denna ritning som ett kontrakt mellan abstrakt klass och de härledda klasserna. Implementeringsspecifikationerna lämnas upp till varje underklass, men detta gränssnitt specificerar de vanliga metoderna som är nödvändiga för alla underklasser. Ändringar som görs i den abstrakta klassen kommer omedelbart att spridas till alla härledda klasser som använder den, vilket möjliggör mer kodåteranvändning och enklare underhåll.







Hur fungerar abstrakta klasser i PHP?

När 'abstrakt' nyckelord används för att definiera en klass, informeras PHP om att klassen inte kan instansieras. Både abstrakt och icke-abstrakt metoder finns i abstrakta klasser . Abstrakt metoder definieras med 'abstrakt' nyckelord och inte tillhandahåller en implementering – de deklarerar helt enkelt metodsignaturen. Dessa abstrakta metoder måste implementeras av härledda klasser som härrör från abstrakt klass . Icke-abstrakt metoder, å andra sidan, tillhandahåller en standardimplementering som härledda klasser kan välja att åsidosätta.



Låt oss titta på ett exempel:





abstrakt klass Mig {

abstrakt fungera Om mig ( $namn , $ålder ) ;

}

klass Intro sträcker sig Mig {

fungera Om mig ( $namn , $ålder ) {

eko 'Mitt namn är $namn och min ålder är $ålder ' ;

}

}

$a = ny Intro ( ) ;

$a -> Om mig ( 'Guppa' , tjugoett ) ;

?>

I ovanstående kod är abstrakt metod i abstrakt föräldraklass 'Jag' har två argument, 'namn' och 'ålder'. Underklassen 'Intro' definierar också samma funktion med dessa två argument, och introsatsen skrivs ut på skärmen.





Produktion



Fördelar med abstrakta klasser i PHP

1: Kod Återanvändbarhet

Abstrakta klasser i PHP har en stor fördel: de låter dig återanvända kod. Genom att definiera delat beteende i en abstrakt klass , kan du undvika att upprepa kod i många olika underklasser. Detta gör det enklare att hantera och underhålla din kod. Abstrakta klasser hjälper dig också att genomdriva konsekvens och standarder för alla dina underklasser.

2: Definiera abstrakta egenskaper

I PHP , abstrakta klasser har en användbar funktion som kallas abstrakt egenskaper. Dessa egenskaper låter dig ställa vissa krav för underklasser. Om du till exempel skapar ett system för djur kan du ställa in en abstrakt egenskap som kallas $namn som kräver att varje underklass har en namnegenskap. Detta kan hjälpa till att säkerställa att din kod har en konsekvent struktur och göra den enklare att förstå och underhålla.

Slutsats

Möjligheten att designa en uppsättning funktioner som kan delas av flera klasser abstrakta klasser användbar för utvecklare. Detta leder till mer kodåteranvändning och enklare underhåll eftersom alla ändringar som görs i en abstrakt klass automatiskt påverkar alla klasser som ärver från den. När den används på rätt sätt, abstrakta klasser kan avsevärt förbättra strukturen och organisationen av kod i ett objektorienterat projekt. Det är dock viktigt att använda dem klokt eftersom överanvändning av dem kan leda till alltför komplex och svår underhållen kod.