![]() |
|
الدرس الثامن والعشرون - ICloneable interface - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : الأقسام التعليمية - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=90) +--- قسم : قسم دورات المنتدى (http://vb4arb.com/vb/forumdisplay.php?fid=113) +---- قسم : دورة .net 2008 . لنبدأ سوياً (http://vb4arb.com/vb/forumdisplay.php?fid=138) +---- الموضوع : الدرس الثامن والعشرون - ICloneable interface (/showthread.php?tid=5622) |
الدرس الثامن والعشرون - ICloneable interface - RaggiTech - 14-10-12 كاتب الموضوع : أحمد جمال
بسم الله الرحمن الرحيم .السلام عليكم ورحمة الله وبركاته . نواصل اليوم التعرف على الواجهات الشهيرة ، دورنا في هذا الدرس التعرف على ICloneable . عملية ال clone يقصد بها عملية النسخ للكائن ، بمعنى اننا عندما نكتب الكود التالي : c#: كود : [FONT=Tahoma]int x=5;vb.net: كود : Dim x As Integer = 5 فإننا فعلياً نقوم بنقل قيمة x إلى y ، ولكن في حالة تعاملنا مع الفئات بالشكل التالي : c#: كود : car x=new car("BMW");vb.net: كود : Dim x As New car("BMW") في الواقع ان قيمة x لا تنتقل إلى y ، بل إن y يصبح يشير إلى المكان الذي فيه قيمة x ، ولذا فإن اي تعديل في قيمة x سيعدل قيمة y والعكس بالعكس . يمكنك مراجعة الدرس التالي لتفهم هذه النقطة بوضوح : http://vb4arb.com/vb/showthread.php?731 من هنا كانت عملية ال clone من اجل عمل نسخة جديدة في القيمة ووضعها في المتغير الآخر . الواجهة ICloneable التي تحتوي على الدالة clone ،يمكن استخدامها لهذا الغرض ، حيث يمكننا كتابة كود كالتالي : c#: كود : [FONT=Tahoma]public object Clone()vb.net: كود : Public Function Clone() As Object الآن اصبح بامكانك عمل نسخة جديدة باستخدام clone بالشكل التالي : C#: كود : [FONT=Tahoma]car x=new car("BMW");vb.net: كود : Dim x As New car("BMW") والله الموفق ... والسلام عليكم ورحمة الله وبركاته . |