PHP - Interfaces in Hindi




एक interface आपको उन methods की एक list को निर्दिष्ट करने की अनुमति देता है जिन्हें class को implement करना चाहिए। एक interface को परिभाषित करने के लिए, आप निम्नानुसार interface keyword का उपयोग करते हैं −

<?php
interface IMyInterface{
 // methods...
}

एक interface में वे methods होते हैं जिनमें कोई implementation नहीं होता है। दूसरे शब्दों में, interface के सभी तरीके abstract methods हैं। एक interface में अपने स्वयं के स्थिरांक हो सकते हैं। निम्नलिखित syntax देखें −

Syntax

<?php
interface IMyInterface{
 const INTERFACE_CONSTANT_1 = 1;
 const INTERFACE_CONSTANT_2 = 'a string';
 
 public function method_1();
 public function method_2();
}

दोस्तों interface में सभी methods में सार्वजनिक दृश्यता स्तर होना चाहिए।

जब हम एक new class घोषित करना चाहते हैं, जो मौजूदा क्लास के गुणों और methods का पुन: use करता है, तो हम कहते हैं कि एक subclass parent class से विरासत में आता है या विस्तार करता है, हालांकि इंटरफेस के लिए, हम कहते हैं कि एक क्लास एक interface लागू करता है। एक क्लास केवल एक क्लास से प्राप्त कर सकता है जबकि एक क्लास एक या एक से अधिक interface लागू कर सकता है।

दोस्तों एक interface को लागू करने के लिए, आप निम्नानुसार operator का उपयोग करते हैं −

class MyClass implements IMyInterface{
 public function method_1(){
 // method 1 implementation 
 }
 public function method_2(){
 // method 2 implementation
 }
}

जब एक class एक interface लागू करता है, इसी लिए इसको एक concrete class भी कहा जाता है। Concrete क्लास को समान names और signatures के साथ interface के सभी तरीकों को लागू करना होता है।

एक class दो interfaces को कार्यान्वित नहीं कर सकता है जिसमें एक ही method का नाम है क्योंकि यह method ambiguity के साथ खत्म हो जाएगा।

एक क्लास की तरह, आप extends operator का उपयोग करके एक interface का विस्तार निम्नानुसार कर सकते हैं −

Syntax

interface IReadable{
 public function read();
}
 
interface IWritable extends IReadable{
 public function write();
}