ما هي حزم الجافا..؟ 42638.imgcache

ما هي حزم الجافا..؟ 42638.imgcache

هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.


مرحبا بك يا (زائر) في منتدى وحــي يــوحـى سعداء بتواجدك
 
الرئيسيةأحدث الصوراليومالتسجيلدخول

 

 ما هي حزم الجافا..؟

اذهب الى الأسفل 
2 مشترك
كاتب الموضوعرسالة
قلب
مدير المنتدى
مدير المنتدى
قلب


الجنس : ذكر

الإعاقة : حركية

البلد : المغرب

عدد الرسائل : 190

تاريخ التسجيل : 15/07/2008

ما هي حزم الجافا..؟ Empty
مُساهمةموضوع: ما هي حزم الجافا..؟   ما هي حزم الجافا..؟ I_icon_minitime12/6/2011, 05:48


حزم الجافا (Java Packages)


  • ماهي حزم الجافا؟
  • لماذا نحتاج حزم الجافا؟
  • كيف نستطيع انشاء حزم الجافا؟


ماهي حزم الجافا؟

التعريف: حزم الجافا هي مجموعة من الفئات المترابطة، و كل مجموعة من الفئات تنظم تحت حزمة معينة لأجل تحديد الهوية. و الحزمة تتكون من:


  • حزم فرعية تحت الحزمة الأم.
  • مجموعة من الفئات المتعلقة بالحزمة الأم.


بعض الأمثلة: الحزمة Java تحتوي على حزم فرعية منها applet, io, alng, net, awt & util و لو أخذنا الحزمة الفرعية Java.awt لحصلنا على حزمة فرعية من awt مثل image و يكون الامتداد لها Java.awt.image

لماذا نحتاج حزم الجافا؟

مبرمجي الجافا يعتمدون على الحزم لتكوين فئات مترابطة داخل هذه الحزم و الأسباب هي:


  • العثور على الفئات بشكل سريع و استخدامها بالبرامج.
  • تنحدر الفئات تحت الحزم لكي لا تتعارض اسماء الفئات مع بعضها البعض.
  • للتحكم بالفئات بشكل كامل.


مسميات الحزم و الحزم الفرعية و الفئات: الحزمة تتكون من حزم فرعية و فئات متفرعة، لكن لا نستطيع تسمة الحزمة أو الحزم الفرعية أو احدى الفئات باسم واحد. و مثال على ذلك: الحزمة java.awt لديها حزمة فرعية بالاسم image. لكن لا نستطيع تسمية احدى الفئات بالاسم image، لأن الاسم محجوز للحزمة الفرعية و العكس صحيح.

كيف نستطيع انشاء حزم الجافا؟

لنرى مجموعة من الفئات و التي نستطيع وضعها في حزمة معينة. نفترض اننا كتبنا فئات عن النقاط و الدائرة و المستطيل و المربع.


public class Point {

int_x coord;

int_y coord;



public Point() {

x_coord = 0;

y_coord = 0;

}

public Point(int x, int y) {

x_coord = x;

y_coord = y;

}

}
public class Rectangle extends Point

{

double width;

double height;



public Rectangle(int x, int y, double w, double h)

{

super(x, y);

width = w;

height = h;

}

}
public class Circle extends Point

{

double radius;



public Circle(int x, int y, double r)

{

super(x, y);

radius = r;

}

}
public class Square extends Point

{

double edge;



public Square(int x, int y, double e)

{

edge = e;

}

}


الآن نود أن نضع هذه الفئات مع بعضها البعض في حزمة لعدة أسباب:


  • نستطيع نحن و المبرمجين الآخرين أن نجد هذه الفئات لأنها مترابطة.
  • نستطيع نحن و المبرمجين الآخرين أن نعرف كيف نجد هذه الفئات لأنها دوال رسم مترابطة.
  • اسماء الفئات السابقة لن تتعارض مع اسماء الفئات من الحزم الاخرى لأنها سوف تكون تحت حزمة جديدة من انشائك، مثال على ذلك:



package geometry;

public class Point {

int_x coord;

int_y coord;



public Point() {

x_coord = 0;

y_coord = 0;

}

public Point(int x, int y) {

x_coord = x;

y_coord = y;

}

}
package geometry;

public class Rectangle extends Point

{

double width;

double height;



public Rectangle(int x, int y, double w, double h)

{

super(x, y);

width = w;

height = h;

}

}
package geometry;

public class Circle extends Point

{

double radius;



public Circle(int x, int y, double r)

{

super(x, y);

radius = r;

}

}
package geometry;

public class Square extends Point

{

double edge;



public Square(int x, int y, double e)

{

edge = e;

}

}


نلاحظ هنا اننا اضفنا السطر package geometry في كل الفئات ( كل فئة توجد في ملف مستقل ). لكن لو فرضنا اننا نريد استخدام الفئة Rectangle موجودة بالحزمة java.awt مع الفئة الموجود بالحزمة geometry بنفس البرنامج الذي نريد كتابته، فماذا نفعل ؟
استدعاء فئتين بنفس المسمى:



نستطيع ذلك باستخدام fully qualified name و هو كتابة المسار الكامل للفئة، مثال على ذلك:



java.awt.Rectangle rec1 = new java.awt.Rectangle(...); // استخدمنا المسار الكامل للفئة

geometry.Rectangle rec2 = new geometry.Rectangle(...); // و هنا ايضاً



كيفية استدعاء فئة معينة من الحزمة الخاصة بها:



تستطيع استدعاء الفئات من الحزم عن طريق ثلاث طرق:



  • استدعائها عن طريق كتابة المسار الكامل ( كما المثال السابق ).
  • استدعائها فقط عن طريق الحزمة java.awt.Rectangle
  • استدعاء الحزمة كاملة بما فيها من فئات اخرى java.awt.*;¹.


¹
النجمة (*) تدل على استدعاء الحزم الفرعية و الفئات الموجودة تحت هذه الحزم


منقول للافادة
الرجوع الى أعلى الصفحة اذهب الى الأسفل
ابن الجنوب ال
مشرف القسم التقني
مشرف القسم التقني
ابن الجنوب ال


الجنس : ذكر

الإعاقة : لا يوجد

البلد : اليمن

عدد الرسائل : 35

تاريخ التسجيل : 05/06/2011

ما هي حزم الجافا..؟ Empty
مُساهمةموضوع: رد: ما هي حزم الجافا..؟   ما هي حزم الجافا..؟ I_icon_minitime12/6/2011, 15:07

مو كل شي على الجافا انته بدات من خطوات برمجيه متقدمه شكرا اخي
الرجوع الى أعلى الصفحة اذهب الى الأسفل
قلب
مدير المنتدى
مدير المنتدى
قلب


الجنس : ذكر

الإعاقة : حركية

البلد : المغرب

عدد الرسائل : 190

تاريخ التسجيل : 15/07/2008

ما هي حزم الجافا..؟ Empty
مُساهمةموضوع: رد: ما هي حزم الجافا..؟   ما هي حزم الجافا..؟ I_icon_minitime12/6/2011, 15:55

ايوة اعرف أخي ، انا فقط قرأت الموضوع واستفدت منه ونقلته هنا، يعني مش ناوي اعملها دروس نعليمية او دورة ...


انا بدأت اتعلم الجافا والحمد لله، لأني وجدها اللغة الانسب والاجمل خصوصا انها تجمع بين تطبيقات الجهاز + تطبيقات الويب




الله الموفق




قلب king
الرجوع الى أعلى الصفحة اذهب الى الأسفل
قلب
مدير المنتدى
مدير المنتدى
قلب


الجنس : ذكر

الإعاقة : حركية

البلد : المغرب

عدد الرسائل : 190

تاريخ التسجيل : 15/07/2008

ما هي حزم الجافا..؟ Empty
مُساهمةموضوع: رد: ما هي حزم الجافا..؟   ما هي حزم الجافا..؟ I_icon_minitime12/6/2011, 15:57

لا انسى

اخي ابن الجنوب لو عندك اي فائدة بخصوص الجافا او لغات البرمجة عمومة يعني معلومة او اي شيء فلا تبخل علينا به



بالتوفيق king
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
ما هي حزم الجافا..؟
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
 :: القسم التقني (بإشراف ابن الجنوب) :: الكمبيوتر والانترنت-
انتقل الى: