polmorphism သည်မတူညီသောအပြုအမူများကိုတူညီသောနည်းလမ်းများဖြင့်ပြသထားသောကွဲပြားခြားနားသောအရာဝတ်ထုများကိုရည်ညွှန်းသည့်အရာဝတ်ထု ဦး တည်ပရိုဂရမ်းမင်း၏အဓိကအယူအဆတစ်ခုဖြစ်သည်။ PHP တွင် Polymorphism သည်အမွေဆက်ခံခြင်းနှင့်နည်းလမ်းပြန်လည်ရေးခြင်းဖြင့်ပြောင်းလွယ်ပြင်လွယ်ပြုတ်ကျနိုင်သည်။
အမွေသည် polymorphism ကိုအကောင်အထည်ဖော်ရန်အတွက်အခြေခံယန္တရားဖြစ်သည်။ ၎င်းသည်ခွဲခြမ်းစိတ်ဖြာခြင်း၏ဂုဏ်သတ္တိများနှင့်နည်းလမ်းများကိုအမွေဆက်ခံရန်ခွင့်ပြုထားသည်။
နည်းလမ်းပြန်လည်ရေးခြင်းသည် polymorphic အကောင်အထည်ဖော်မှုအတွက်သော့ချက်ဖြစ်သည်။ မိဘအတန်းရှိနည်းလမ်းကိုပြန်လည်အဓိပ္ပာယ်ဖွင့်ခြင်းအားဖြင့်ဤနည်းသည်နည်းလမ်း၏အပြုအမူကို ပြောင်းလဲ. အရာဝတ်ထုကိုအမှန်တကယ်အမျိုးအစားအရကွဲပြားခြားနားသောစစ်ဆင်ရေးကိုတုံ့ပြန်နိုင်သည်။
တိရိစ္ဆာန်ခေါ်ဆိုမှုများကိုပြန်ပို့သော အသံ နည်းလမ်းပါ 0 င်သည့်ရိုးရှင်းသောမိဘအတန်းအစား တိရိစ္ဆာန်ကို သတ်မှတ်ပါ။
class Animal {
protected $name;
public function __construct($name) {
$this->name = $name;
}
public function sound() {
return "I am an animal.";
}
}
CAMCCLASSESS Two Subclasses သူ နှစ် ဦး ကိုဖန်တီးပြီး တိရိစ္ဆာန် မှအမွေဆက်ခံခြင်းနှင့် အသံ နည်းလမ်းကိုပယ်ဖျက်ပါ။
class Cat extends Animal {
public function sound() {
return "Meow!";
}
}
class Dog extends Animal {
public function sound() {
return "Woof!";
}
}
မတူညီသောတိရိစ္ဆာန်အရာဝတ်ထုများကိုခင်းကျင်းခြင်း ဖြင့် သိုလှောင်ခြင်း,
$animals = [
new Cat("Tom"),
new Dog("Max")
];
foreach ($animals as $animal) {
echo $animal->sound() . "<br>";
}
ရလဒ်များအစက်အပြောက်:
ညောင်!
Woof!
polymorphism သည် code ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်နှင့်အရွယ်အစားနိုင်စေသည်။ လုပ်ငန်းဆောင်တာအသစ်များကိုထည့်သွင်းသောအခါလက်ရှိကုဒ်များကိုပြုပြင်ရန်မလိုအပ်ပါ။
ဥပမာအားဖြင့်, သင်သည် တိရိစ္ဆာန် အတန်းသို့ အစာစားသော နည်းလမ်းကိုထည့်ပြီး subclass တွင်သူတို့၏သက်ဆိုင်ရာအပြုအမူများကိုအကောင်အထည်ဖော်နိုင်သည်။
class Cat extends Animal {
public function eat() {
return "I am eating a fish.";
}
}
class Dog extends Animal {
public function eat() {
return "I am eating a bone.";
}
}
ဤနည်းအားဖြင့်မတူညီသော subclasses သည်လက်ရှိလူတန်းစားဖွဲ့စည်းပုံကိုမထိခိုက်ဘဲကွဲပြားခြားနားသော subclasses ကွဲပြားခြားနားသော စားသုံးမှု အကောင်အထည်ဖော်မှုရှိနိုင်သည်။
Polymorphism သည် PHP Object-Oriented Programming ၏အရေးကြီးသောအင်္ဂါရပ်တစ်ခုဖြစ်သည်။ အမွေနှင့်နည်းလမ်းများအားဖြင့်ကွဲပြားသောအရာဝတ်ထုများသည်တူညီသောမက်ဆေ့ခ်ျကိုကွဲပြားခြားနားသောနည်းလမ်းများဖြင့်တုန့်ပြန်ခြင်း, code ၏ပြောင်းလွယ်ပြင်လွယ်မှုနှင့်ပမာဏကိုတိုးတက်စေပြီး 0 ယ်လိုအားနှင့် code ကိုပြုပြင်ထိန်းသိမ်းမှုပြောင်းလဲခြင်းကိုထိရောက်စွာတုံ့ပြန်နိုင်သည်။