⊗ppOpTrAMt 83 of 107 menu

PHP да ООП да трейтларнинг абстракт методлари

Трейтларда баъзи методларни абстракт деб эълон килиш мумкин. Бундай ҳолда, ушбу трейтдан фойдаланувчи синф бундай методни амалга оширишга мажбур бўлади. Бундан ташқари, трейтнинг абстракт методлари хусусий бўла олмайди.

Келгила, мисолда кўрамиз. Фарз килайлик, бизда шундай трейт бор:

<?php trait TestTrait { public function method1() { return 1; } abstract public function method2(); } ?>

Фарз килайлик, бизнинг трейт Test синфи томонидан ишлатилмоқда. Трейтдаги абстракт методнинг мавжудлиги дастурчини уни синфда амалга оширишга мажбурлайди, акс ҳолда PHP хатоси келиб чиқади.

Келгила, Test синфини method2 методу билан биргаликда ясаймиз:

<?php class Test { use TestTrait; // трейтдан фойдаланамиз // Абстракт методни амалга оширамиз: public function method2() { return 2; } } new Test; ?>

Менинг TestTrait трейтимнинг ва Test синфимнинг кодини нусхаланг. Синфдан method2 методини ўчиринг. Унинг амалга оширилмаслиги PHP хатосига олиб келишига ишонч ҳосил килинг.

Ўзбек
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш