الرئيسية > برمجة > التجريد في البرمجة الكائنية

التجريد في البرمجة الكائنية


السلام عليكم و رحمة الله و بركاته
يستخدم التجريد (Abstract) في البرمجة الكائنية لتعريف دالة (method) من دون بنائها كمثال تخيل هيكل من دون بناء .

مثال :
abstract public function test($arg);
أما تعمير الدالة فيكون في الكائن المشتق حيث نقوم بإعادة تعرف الدالة بمثل ماكتبت في الكائن الأب مع نفس الصلاحيات حيث protected تعرف protected أو Public لكن ليس
private أما private فتيقى كما هي .
مثال :
<?php
abstract class ABS
{
abstract public function config($arg);
}
class eABS extends ABS
{
public $email;
public function config($arg)
{
$this->email = $arg;
}
public function ShowEMail()
{
echo $this->email;
}
}
?>
بما أن الكائن سيكون فيه على الأقل طريقة مجردة فإن الكائن يجب أن يسبق بالكلمة المفتاحية abstract ،هذا في السطر الثاني .
السطر الرابع قمنا بكتابة تعريف للدالة من دون جسم .
السطر 6 إشتققنا كائنا جديدا (eABS) من الكائن الأب ABS حيث سنقوم بكتابة جسم الدالة test .
السطر 8 قمنا بتعريف خاصية (property) السطر 9 أعدنا كتابة تعريف الطريقة الموجودة في الكائن المجرد لكن هذه المرة مع وضع جسم لها .
السطر 13 هو طريقة لطباعة البريد .
سيكون إستدعاء الكائن من الكائن المشتق كما يلي :
<?php
$Myclass = new eABS();
$Myclass->config(“myemail@domain”);
$Myclass->ShowEMail();
?>
هذه السطور تشرح نفسها .
ملخص :
إن كان الكائن سيحتوي على طريقة مجردة على الأقل فيجب أن يعرف الكائن على شكل مجرد أيضا .
عند تعمير الطريقة يجب أن تحمل نفس الإسم و الصلاحيات مثل ماعرفت عندما كانت مجردة .
تعمير الطرق (properties) يكون في الكائن المشتق .
يستعمل فقط الكائن الذي عمرت فيه الطرق المجردة .

About these ads
التصنيفات:برمجة الوسوم:,
  1. 25 يونيو 2011 الساعة 8:48 ص

    شكرا لك اخي الكريم جزاك الله الف خير ,, شرح واضح ومفهوم

  1. No trackbacks yet.

أضف تعليق

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

You are commenting using your WordPress.com account. تسجيل خروج   / تغيير )

Twitter picture

You are commenting using your Twitter account. تسجيل خروج   / تغيير )

Facebook photo

You are commenting using your Facebook account. تسجيل خروج   / تغيير )

Google+ photo

You are commenting using your Google+ account. تسجيل خروج   / تغيير )

Connecting to %s

تابع

Get every new post delivered to your Inbox.

Join 66 other followers

%d bloggers like this: