Ano ang OOP Abstract Class sa PHP?

Ano Ang Oop Abstract Class Sa Php



Ang pundasyon ng “object-oriented programming” (OOP) paradigm ay ang paniwala na 'mga bagay' maaaring maglaman ng parehong code at data. Isa sa mga pangunahing bahagi ng object-oriented programming (OPEN) sa PHP , isang sikat na scripting language, ay ang paggamit ng abstract na mga klase . Sa PHP, isang abstract na klase nagsisilbing isang modelo para sa paglikha ng iba pang mga klase dahil hindi ito maaaring instantiated sa sarili nitong. Tinatalakay ng artikulong ito abstract na mga klase kahulugan, functionality, at paggamit sa OOP ng PHP.

Ano ang Abstract Class?

Una, mahalagang maunawaan kung ano ang isang abstract na klase ay nasa PHP . Ang isang klase na hindi maaaring instantiated, o direktang gawin sa isang bagay, ay sinasabi na abstract . Sa halip, ginagamit ito ng ibang klase na nagmana mula rito bilang base o parent class. Mga abstract na klase huwag magbigay ng tiyak na pagpapatupad ng mga nagmula na klase; sa halip, binabalangkas nila ang kanilang istraktura at pag-uugali. Nagbibigay-daan ito sa mga nagmula na klase na mapanatili ang kanilang sariling natatanging pag-uugali habang sumusunod pa rin sa pangunahing balangkas na ibinigay ng abstract na klase.

Bilang bahagi ng PHP 's BUKAS , abstract na mga klase nagsisilbing isang paraan ng pagtukoy ng isang batayang koleksyon ng mga katangian na maaaring ibahagi ng maraming nagmula na mga klase. Maaaring magbigay ang mga developer ng template para sa mga klase na magmamana mula sa abstract na klase sa pamamagitan ng paggawa nito. Upang matiyak na ang lahat ng nagmula na mga klase ay umaayon sa parehong interface, ang blueprint na ito ay nagsisilbing isang kontrata sa pagitan ng abstract na klase at ang mga nagmula na klase. Ang mga detalye ng pagpapatupad ay natitira hanggang sa bawat sub-class, ngunit ang interface na ito ay tumutukoy sa mga karaniwang pamamaraan na kinakailangan para sa lahat ng mga subclass. Ang mga pagbabagong ginawa sa abstract na klase ay agad na magpapalaganap sa lahat ng mga nagmula na klase na gumagamit nito, na nagbibigay-daan para sa higit pang paggamit muli ng code at mas madaling pagpapanatili.







Paano Gumagana ang Mga Abstract na Klase sa PHP?

Kapag ang 'abstract' na keyword ay ginagamit upang tukuyin ang isang klase, PHP ay alam na ang klase ay hindi maaaring instantiated. pareho abstract at hindi abstract Ang mga pamamaraan ay matatagpuan sa abstract na mga klase . Abstract ang mga pamamaraan ay tinukoy gamit ang “abstract” keyword at hindi nagbibigay ng pagpapatupad – ipinapahayag lang nila ang lagda ng pamamaraan. Ang mga abstract na pamamaraan na ito ay dapat ipatupad ng mga nagmula na klase na nagmula sa abstract na klase . Hindi abstract Ang mga pamamaraan, sa kabilang banda, ay nagbibigay ng default na pagpapatupad na maaaring piliin ng mga nagmula na klase na i-override.



Tingnan natin ang isang halimbawa:





abstract klase Ako {

abstract function Tungkol sa Akin ( $pangalan , $edad ) ;

}

klase Intro umaabot Ako {

function Tungkol sa Akin ( $pangalan , $edad ) {

echo 'Ang pangalan ko ay $pangalan at ang edad ko ay $edad ' ;

}

}

$a = bago Intro ( ) ;

$a -> Tungkol sa Akin ( 'Bob' , dalawampu't isa ) ;

?>

Sa code sa itaas, ang abstract na pamamaraan nasa abstract na klase ng magulang Ang 'Ako' ay may dalawang argumento, 'pangalan' at 'edad'. Tinutukoy din ng child class na 'Intro' ang parehong function sa dalawang argumentong ito, at ang intro statement ay naka-print sa screen.





Output



Mga Bentahe ng Abstract na Klase sa PHP

1: Code Reusability

Mga abstract na klase sa PHP ay may malaking kalamangan: pinapayagan ka nitong gamitin muli ang code. Sa pamamagitan ng pagtukoy sa ibinahaging pag-uugali sa isang abstract na klase , maiiwasan mo ang paulit-ulit na code sa maraming iba't ibang mga subclass. Ginagawa nitong mas simple ang pamamahala at pagpapanatili ng iyong code. Mga abstract na klase tumutulong din sa iyo na ipatupad ang pagkakapare-pareho at mga pamantayan sa lahat ng iyong mga subclass.

2: Tukuyin ang Mga Abstract na Katangian

Sa PHP , ang mga abstract na klase ay may kapaki-pakinabang na tampok na tinatawag abstract ari-arian. Nagbibigay-daan sa iyo ang mga property na ito na magtakda ng ilang partikular na kinakailangan para sa mga subclass. Halimbawa, kung gumagawa ka ng system para sa mga hayop, maaari kang magtakda ng abstract property na tinatawag $pangalan na nangangailangan ng bawat subclass na magkaroon ng isang pag-aari ng pangalan. Makakatulong ito na matiyak na ang iyong code ay may pare-parehong istraktura at gawing mas simple ang pag-unawa at pagpapanatili nito.

Konklusyon

Ang kakayahang magdisenyo ng isang hanay ng mga tampok na maaaring ibahagi ng ilang mga klase ay gumagawa abstract na mga klase kapaki-pakinabang para sa mga developer. Ito ay humahantong sa mas maraming paggamit muli ng code at mas madaling pagpapanatili dahil ang anumang mga pagbabagong ginawa sa isang abstract na klase ay awtomatikong nakakaapekto sa lahat ng mga klase na nagmamana mula dito. Kapag ginamit nang tama, abstract na mga klase maaaring makabuluhang mapabuti ang istraktura at organisasyon ng code sa isang object-oriented na proyekto. Gayunpaman, mahalagang gamitin ang mga ito nang maingat dahil ang sobrang paggamit sa mga ito ay maaaring humantong sa sobrang kumplikado at mahirap mapanatili na code.