الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

IComparable & ICloneable & IConvertable ?

مغلق
بدأه الاحتراف في 11 أغسطس 2005 · 4 رد · 726 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

IComparable & ICloneable & IConvertable & IEnumerable

ما المقصود بها ؟ وما هي استخداماتها ؟

صراحة انا اجد صعوبة في الالمام بموضوع الـ Interfaces ...

هل من شرح مبسط لها ؟

الرجاء المساعدة ...

شكرا

#2

interfaces عبارة عن صفات يتصف بها الشيء الذي تصممه. خذ هذا المثال:

لدينا 5 مصابيح، بأحجام مختلفة وألوان مختلفة!! أريدك أن ترتبها من الأصغر إلى الأكبر ماذا ستفعل؟!!

هذا هو المصباح، ميزة المصباح، أو من صفات المصباح أنك تستطيع أن تقارن بينه وبين مصباح آخر.. وأنا حددت المقارنة بحجم المصباح!!

class Lamp implements Comparable{
	int size;
	Color color;
	public Lamp(int x, Color color){
  size=x;
  this.color=color;
	}
	public int getSize(){
  return size;
	}

	//comparing using this algorithm!!
	public int compareTo(Object o){
  Lamp lamp=(Lamp)o;
  if(lamp.getSize()>size)return 1;
  if(lamp.getSize()<size)return -1;
  return 0;
	}
	public String toString(){
  return "Lamp Size: "+size;
	}
	public static void main(String []args){
  ArrayList list=new ArrayList();
  //unsorted!!!!
  list.add(new Lamp(40, Color.red));
  list.add(new Lamp(60, Color.blue));
  list.add(new Lamp(20, Color.red));
  list.add(new Lamp(10, Color.green));
  list.add(new Lamp(20, Color.red));
  //prints elements
  //we want to sort the lamps from the largest Lamp to the
  //smallest Lamp
  Collections.sort(list);
  //This method sorts lists of objects that can be compared to!!!
  //print elements.
	}
}

اقلب البرنامج من جافا إلى سي شارب بسهولة!

هل تستطيع ترتيب المصابيح من الأكثر حمرة إلى الأقل حمرة؟؟!!

بالتوفيق..

#3

السلام عليكم

شكرا لك أخي الو مازن على الاهتمام والرد ..

ولكن عذرا .. لم تصل الفكرة بشكل واضح!

اتقصد ان هذه الـ Interfaces تضيف Methods خاصة للأصناف ؟

ألا استطيع ان أنشئ دالة compareTo بشكل عادي وبدون استخدام الـ Interface ؟

أم ان هذا شرط لاستخدام Collections.sort(list) ؟

عذرا .. هل من شرح مفصل أكثر ؟؟

شكرا

#4

توجد دروس هنا عن البرمجة الشيئية

دروس في البرمجة الكائنية OOP لجميع اللغات الكائنية

وبالأخص، أدرجت ردا هنا لإجابة سؤالك، أرجو أن يكون واضحا..

/index.ph...ndpost&p=368615

#5

شكرا أخي ..

سأقرأ الموضوع الذي اشرت اليه

تحياتي

هذا الموضوع مغلق.

مواضيع مشابهة