هل هناك ما أخطأت به في هذا المثال وهل هذا فقط هو مصطلح الPolymorphism ؟
<?php
/*
- Polymorphism أو الواجهات interfaces مصطلح في البرمجة كائنية التوجة بمعني متعدد الأوجة
- مثال الريموت كنترول يقوم بنفس الوظيفة في كلا من التلفزيون والريسيفر
- يتم التصريح عنة بأستخدام الكلمة المحجوزة interface
- ويتم أستخدامة داخل الاصناف بأستخدام الكلمة المحجوزة implemnts
*//*بفرض أن لديك جهاز تليفزيون وريسيفر في منزلك
و الواجهة تمثل الريموت كنترول
*/interface remotecontrol{//يمكن حذف هذه الطرق methods ولن يحدث اي خطأ publicfunction channel_1();publicfunction channel_2();publicfunction channel_3();publicfunction channel_4();publicfunction power_on();publicfunction power_off();}// الصنف الأول : ريموت الريسيفر class reciver_remote implements remotecontrol{//لا يمكن حذف هذه الطرق لانه مصرح عنها في الواجهة والا سوف يحدث خطأ publicfunction channel_1(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الأولي ";}publicfunction channel_2(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الثانية ";}publicfunction channel_3(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الثالثة ";}publicfunction channel_4(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الرابعة ";}publicfunction power_on(){
echo "تم تشغيل الرسيفر ";}publicfunction power_off(){
echo "تم أغلاق الريسيفر";}}// الصنف الثاني : ريموت التيلفزيونclass tv_remote implements remotecontrol{publicfunction channel_1(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الأولي ";}publicfunction channel_2(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الثانية ";}publicfunction channel_3(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الثالثة ";}publicfunction channel_4(){
echo "تم تغيير القناة بنجاح أنت تشاهد الأن القناة الرابعة ";}publicfunction power_on(){
echo "تم تشغيل التيلفزيون ";}publicfunction power_off(){
echo "تم أغلاق التيلفزيون";}}# الأن للتصريح عن كائنات جديدة وتستطيع تعديلها كما تريد
$reciver_remote =new reciver_remote();
$reciver_remote->channel_1();
$reciver_remote->channel_2();
$reciver_remote->channel_3();
$reciver_remote->channel_4();
$reciver_remote->power_on();
$reciver_remote->power_off();
$tv_remote =new tv_remote();
$tv_remote->channel_1();
$tv_remote->channel_2();
$tv_remote->channel_3();
$tv_remote->channel_4();
$tv_remote->power_on();
$tv_remote->power_off();//لطباعة الكائنات
var_dump($reciver_remote,$tv_remote);
السؤال
محمود سامي حسين
هل هناك ما أخطأت به في هذا المثال وهل هذا فقط هو مصطلح الPolymorphism ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.