⊗ppOpIhCn 30 of 107 menu

PHP में OOP इनहेरिटेंस के दौरान कंस्ट्रक्टर

इनहेरिटेंस के दौरान पैरेंट के कंस्ट्रक्टर को ओवरराइड किया जा सकता है। आइए एक उदाहरण से देखते हैं। मान लीजिए कि हमारे पास निम्नलिखित पैरेंट क्लास है:

<?php class User { private $name; private $surn; public function __construct($name, $surn) { $this->name = $name; $this->surn = $surn; } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

मान लीजिए कि पैरेंट क्लास से निम्नलिखित क्लास इनहेरिट करती है:

<?php class Student extends User { } ?>

मान लीजिए कि हम चाइल्ड क्लास में कंस्ट्रक्टर को एक्सटेंड करना चाहते हैं, इसमें अतिरिक्त पैरामीटर जोड़कर:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { } } ?>

इस स्थिति में हमें अनिवार्य रूप से पहली लाइन में parent::__construct() के माध्यम से पैरेंट के कंस्ट्रक्टर को कॉल करना होगा:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

कमांड parent::__construct() असल में पैरेंट का कंस्ट्रक्टर है। इसलिए इसमें आवश्यक पैरामीटर पास करते हैं:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); } } ?>

अब चाइल्ड में वर्ष को चाइल्ड की अपनी प्रॉपर्टी में लिखते हैं:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } } ?>

आइए वर्ष के लिए एक गेटर बनाते हैं:

<?php class Student extends User { private $year; public function __construct($name, $surn, $year) { parent::__construct($name, $surn); $this->year = $year; } public function getYear() { return $this->year; } } ?>

मान लीजिए कि क्लास Employee इस पाठ की क्लास User से इनहेरिट करती है।

क्लास Employee में पैरेंट के कंस्ट्रक्टर को ओवरराइड करें, इसमें उम्र और वेतन का पैरामीटर जोड़कर।

उम्र और वेतन के लिए गेटर बनाएं।

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें