Kas yra OOP Abstract Class PHP?

Kas Yra Oop Abstract Class Php



Pagrindas „Objektinis programavimas“ (OOP) paradigma yra ta sąvoka 'objektai' gali turėti kodą ir duomenis. Vienas iš pagrindinių objektinio programavimo komponentų (ATVIRAS) in PHP , populiari scenarijų kalba, naudojama abstrakčios klasės . PHP, an abstrakti klasė tarnauja kaip pavyzdys kitų klasių kūrimui, nes jo negalima sukurti atskirai. Šiame straipsnyje aptariama abstrakčios klasės“ apibrėžimas, funkcionalumas ir naudojimas PHP OOP.

Kas yra abstrakčioji klasė?

Pirma, svarbu suprasti, kas yra abstrakti klasė yra PHP . Sakoma, kad klasė, kurios negalima sukurti arba tiesiogiai paversti objektu abstrakčiai . Vietoj to, kitos klasės, kurios paveldi iš jos, naudoja ją kaip bazinę arba pirminę klasę. Abstrakčios klasės nepateikia konkretaus išvestinių klasių įgyvendinimo; veikiau nubrėžia savo struktūrą ir elgesį. Tai leidžia išvestinėms klasėms išlaikyti savo išskirtinį elgesį, kartu laikantis pagrindinės abstrakčios klasės sistemos.

Dalis PHP ‘s ATVIRAS , abstrakčios klasės tarnauja kaip priemonė apibrėžti pagrindinį charakteristikų rinkinį, kurį gali dalytis kelios išvestinės klasės. Kūrėjai gali pateikti šabloną klasėms, kurios bus paveldėtos iš abstrakčios klasės, ją sukurdami. Siekiant užtikrinti, kad visos išvestinės klasės atitiktų tą pačią sąsają, šis projektas yra sutartis tarp abstrakti klasė ir išvestines klases. Diegimo specifika paliekama kiekvienam poklasiui, tačiau ši sąsaja nurodo bendrus metodus, būtinus visiems poklasiams. Pakeitimai, atlikti abstrakčioje klasėje, akimirksniu pateks į visas išvestines klases, kurios ją naudoja, todėl bus galima daugiau kodo naudoti pakartotinai ir lengviau prižiūrėti.







Kaip abstrakčios klasės veikia PHP?

Kai „abstraktus“ raktinis žodis naudojamas klasei apibrėžti, PHP informuojamas, kad klasė negali būti kartojama. Abu abstrakčiai ir neabstrakčiai metodus galima rasti abstrakčios klasės . Abstraktus metodai yra apibrėžti su 'abstraktus' raktažodį ir nepateikia įgyvendinimo – jie tiesiog deklaruoja metodo parašą. Šiuos abstrakčius metodus turi įgyvendinti išvestinės klasės, kurios kyla iš abstrakti klasė . Neabstraktus Kita vertus, metodai suteikia numatytąjį įgyvendinimą, kurį išvestinės klasės gali pasirinkti nepaisyti.



Pažiūrėkime į pavyzdį:





abstrakčiai klasė {

abstrakčiai funkcija Apie mane ( $vardas , $amžius ) ;

}

klasė Įvadas tęsiasi {

funkcija Apie mane ( $vardas , $amžius ) {

aidas 'Mano vardas yra $vardas o mano amžius toks $amžius ;

}

}

$a = naujas Įvadas ( ) ;

$a -> Apie mane ( 'Bobas' , dvidešimt vienas ) ;

?>

Aukščiau pateiktame kode abstraktus metodas viduje abstrakti tėvų klasė „Aš“ turi du argumentus: „vardas“ ir „amžius“. Vaikų klasė „Intro“ taip pat apibrėžia tą pačią funkciją su šiais dviem argumentais, o įvado sakinys atspausdinamas ekrane.





Išvestis



PHP abstrakčių klasių privalumai

1: Kodo pakartotinis naudojimas

Abstrakčios klasės PHP turi didelį pranašumą: jie leidžia pakartotinai naudoti kodą. Apibrėždami bendrą elgesį an abstrakti klasė , galite išvengti kodo kartojimo daugelyje skirtingų poklasių. Tai palengvina kodo valdymą ir priežiūrą. Abstrakčios klasės taip pat padės užtikrinti nuoseklumą ir standartus visuose jūsų poklasiuose.

2: apibrėžkite abstrakčias savybes

Į PHP , abstrakčios klasės turi naudingą funkciją, vadinamą abstrakčiai savybių. Šios savybės leidžia nustatyti tam tikrus reikalavimus poklasiams. Pavyzdžiui, jei kuriate sistemą gyvūnams, galite nustatyti abstrakčią ypatybę, vadinamą $vardas tai reikalauja, kad kiekvienas poklasis turėtų pavadinimo savybę. Tai gali padėti užtikrinti, kad kodo struktūra būtų nuosekli, ir lengviau jį suprasti bei prižiūrėti.

Išvada

Galimybė sukurti funkcijų rinkinį, kurį gali bendrai naudoti kelios klasės abstrakčios klasės naudinga kūrėjams. Tai lemia daugiau kodo pakartotinio naudojimo ir lengvesnės priežiūros, nes bet kokie abstrakčios klasės pakeitimai automatiškai paveikia visas klases, kurios paveldi iš jos. Tinkamai naudojant, abstrakčios klasės gali žymiai pagerinti objektinio projekto kodo struktūrą ir organizavimą. Tačiau svarbu juos naudoti protingai, nes per didelis jų naudojimas gali sukelti pernelyg sudėtingą ir sunkiai prižiūrimą kodą.