Ce este OOP Abstract Class în PHP?

Ce Este Oop Abstract Class In Php



Fundamentul „programare orientată pe obiect” (OOP) paradigma este noţiunea că 'obiecte' poate conține atât cod, cât și date. Una dintre componentele principale ale programarii orientate pe obiecte (DESCHIS) în PHP , un limbaj de scripting popular, este utilizarea clase abstracte . În PHP, an clasa abstractă servește drept model pentru crearea altor clase deoarece nu poate fi instanțiată de la sine. Acest articol discută clase abstracte” definiție, funcționalitate și utilizare în POO al PHP.

Ce este o clasă abstractă?

În primul rând, este important să înțelegeți ce anume clasa abstractă este in PHP . Se spune că este o clasă care nu poate fi instanțiată sau transformată direct într-un obiect abstract . În schimb, alte clase care moștenesc de la acesta îl folosesc ca clasă de bază sau părinte. Clasele abstracte nu oferă implementare specifică a claselor derivate; mai degrabă, ele își conturează structura și comportamentul. Acest lucru permite claselor derivate să-și mențină propriul comportament distinctiv, în timp ce aderă la cadrul fundamental oferit de clasa abstractă.

Ca parte din PHP ‘s DESCHIS , clase abstracte servesc ca mijloc de definire a unei colecții de bază de caracteristici care pot fi partajate de mai multe clase derivate. Dezvoltatorii pot oferi un șablon pentru clase care vor moșteni dintr-o clasă abstractă prin crearea acesteia. Pentru a se asigura că toate clasele derivate sunt conforme cu aceeași interfață, acest plan servește ca un contract între clasa abstractă și clasele derivate. Specificul implementării este lăsat la latitudinea fiecărei subclase, dar această interfață specifică metodele comune care sunt necesare pentru toate subclasele. Modificările aduse clasei abstracte se vor propaga instantaneu la toate clasele derivate care o folosesc, permițând mai multă reutilizare a codului și o întreținere mai ușoară.





Cum funcționează clasele abstracte în PHP?

Cand cuvânt cheie „abstract”. este folosit pentru a defini o clasă, PHP este informat că clasa nu poate fi instanțiată. Ambii abstract și non-abstract metodele pot fi găsite în clase abstracte . Abstract metodele sunt definite cu 'abstract' cuvânt cheie și nu oferă o implementare - pur și simplu declară semnătura metodei. Aceste metode abstracte trebuie implementate de clase derivate care derivă din clasa abstractă . Non-abstract metodele, pe de altă parte, oferă o implementare implicită pe care clasele derivate pot alege să o înlocuiască.



Să ne uităm la un exemplu:





abstract clasă Pe mine {

abstract funcţie Despre mine ( $nume , $varsta ) ;

}

clasă Introducere se extinde Pe mine {

funcţie Despre mine ( $nume , $varsta ) {

ecou 'Numele meu este $nume iar vârsta mea este $varsta ' ;

}

}

$a = nou Introducere ( ) ;

$a -> Despre mine ( 'Bob' , douăzeci și unu ) ;

?>

În codul de mai sus, metoda abstracta în clasa părinte abstractă „Eu” are două argumente, „nume” și „vârsta”. Clasa copil „Intro” definește, de asemenea, aceeași funcție cu aceste două argumente, iar instrucțiunea de introducere este tipărită pe ecran.





Ieșire



Avantajele claselor abstracte în PHP

1: Reutilizarea codului

Clasele abstracte în PHP au un mare avantaj: vă permit să reutilizați codul. Prin definirea comportamentului comun într-un clasa abstractă , puteți evita repetarea codului în multe subclase diferite. Acest lucru face gestionarea și întreținerea codului mai simplă. Clasele abstracte De asemenea, vă ajută să impuneți coerența și standardele în toate subclasele dvs.

2: Definiți proprietăți abstracte

În PHP , clasele abstracte au o caracteristică utilă numită abstract proprietăți. Aceste proprietăți vă permit să setați anumite cerințe pentru subclase. De exemplu, dacă creați un sistem pentru animale, puteți seta o proprietate abstractă numită $nume care necesită ca fiecare subclasă să aibă o proprietate de nume. Acest lucru vă poate ajuta să vă asigurați că codul dvs. are o structură consecventă și să îl facă mai ușor de înțeles și de întreținut.

Concluzie

Abilitatea de a proiecta un set de caracteristici care pot fi partajate de mai multe clase face clase abstracte util pentru dezvoltatori. Acest lucru duce la mai multă reutilizare a codului și o întreținere mai ușoară, deoarece orice modificări aduse unei clase abstracte afectează automat toate clasele care moștenesc din aceasta. Când este utilizat corect, clase abstracte poate îmbunătăți semnificativ structura și organizarea codului într-un proiect orientat pe obiecte. Cu toate acestea, este important să le folosiți în mod judicios, deoarece utilizarea excesivă a acestora poate duce la un cod prea complex și dificil de întreținut.