GS301 2023- lecture 7 (1)

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 17

‫كلية تقنية املعلومات‬

‫البرمجة بلغة الجافا‬


‫‪Java Programming Language‬‬

‫محاضرة ‪ :7‬الحزم ‪Packages‬‬


‫إعداد‪ /‬أ‪ .‬سكينة السائح‬
‫ربيع ‪2023‬‬
‫تعريف الحزمة‬
‫ُت‬
‫‪ ‬الحزمة عبارة عن مجلد ‪ directory‬نظم فيها ال‪ classes‬املرتبطة مع بعضها البعض بحيث‬
‫كل مجموعة من ه ذه ال‪ classes‬له ا وظائف معين ة و مش تركة‪ .‬وتمت از لغ ة جاف ا باحتوائه ا‬
‫على عدد هائل من ال‪ classes‬املرتبة في حزم ‪ .packages‬و من اهمها‪:‬‬
‫‪*.java.util‬‬
‫‪*.javax.swing ‬‬
‫‪*.java.awt‬‬
‫‪*.java.io‬‬
‫‪ ‬تحتل الحزم ‪ packages‬بداي ة و أعلى امللفات املصدرية في لغة جافا‪ ،‬فعندما تبدأ بق راءة‬
‫ملف الشفرة املصدرية تجد عبارات استيراد الحزم ‪ packages‬املستخدمة في هذا امللف‬
‫‪‬الحزمة هي مجموعة من األصناف ذات العالقة‪..‬‬
Packages classification
‫تعريف الحزمة‬
‫حزم الجافا هي مجموعة من الفئات املترابطة‪ ،‬و كل مجموعة من التصانيف تنظم تحت‬
‫حزمة معينة و الحزمة تتكون من‪ :‬حزم فرعية تحت الحزمة األم‪.‬‬
‫بعض األمثلة‪ :‬الحزمة ‪ Java‬تحتوي على حزم فرعية منها ‪applet, io, alng, net, awt & util‬‬
‫ولو أخذنا الحزمة الفرعية ‪ Java.awt‬لحصلنا على حزمة فرعية من ‪ awt‬مثل ‪ image‬ويكون‬
‫االمتداد لها ‪Java.awt.image‬‬

‫‪ ‬توجد العديد من الحزم التي تصاحب بيئة ‪ java‬أو تتواجد من قبل املبرمجين‪.‬‬
‫‪ ‬تس مح ه ذه الحزم بإع ادة االس تخدام ل‪ classes‬املوجودة فيها ض من العدي د من التطبيقات‬
‫حسب الحاجة‪.‬‬
‫‪ ‬قبل استخدام أي ‪ class‬مرة أخرى في أي برنامج‪ ،‬يجب وضعها في حزمة‬
‫ملاذا نحتاج حزم الجافا؟‬

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

‫‪ .1‬العثور على تصانيف بشكل سريع و استخدامها بالبرامج‪.‬‬


‫‪ .2‬تنحدر التصانيف تحت الحزم لكي ال تتعارض اسمائها مع بعضها البعض‪.‬‬
‫‪ .3‬للتحكم بالتصانيف بشكل كامل‪.‬‬
‫تكوين الحزمة ‪package creation‬‬
‫لتكوين حزمة و استخدامها في برنامج‪ ،‬نتبع الخطوات التالية‪:‬‬
‫‪ .1‬التصريح ب‪ class‬على أنها ‪public‬‬
‫‪ .2‬اختيار اسم وحيد ل‪ ،package‬ثم إضافة هذا التصريح الى امللف املصدر الذي‬
‫يحتوي على ‪ ،public class‬بحيث أن لكل ملف مصدر هناك تصريح باسم ‪package‬‬
‫واح د و يجب ان يس بق التص ريح بالكلم ة املحج وزة ‪ package‬كل جمل ة في البرنامج‬
‫(امللف املصدر)‪.‬‬
‫‪ .3‬ترجم ة التصنيف ‪ compile the class‬ح تى يمكن تض مين ه ذه الحزمة في‬
‫البرنامج املناسب‪.‬‬
‫تابع‪ :‬تكوين الحزمة ‪package creation‬‬
‫الشكل التالي يبين الخطوات (‪ )1،2‬لتكوين حزمة و تضمينها في برنامج‪:‬‬

‫‪ .4‬تضمين الحزمة في البرنامج املراد استخدام ال‪ class‬فيه‪ ،‬كما هو موضح في املثال‬
‫التالي‪:‬‬
‫;‪import com.CS602‬‬
‫إنشاء حزم الجافا‬
‫‪.‬لنفترض أن لدينا مجموعة من التصانيف و التي نستطيع وضعها في حزمة معينة‬
‫‪.‬كالتالي‪ :‬على سبيل املثال تصانيف عن النقطة و الدائرة و املستطيل و املربع‬
‫‪ -‬تصنيف نقطة‬
‫{ ‪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 public class Square extends Point
{ {
double radius; double edge;

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


{ e)
super(x, y); {
radius = r; 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‬‬

‫و هكذا في باقي التصانيف‬


‫تابع ‪ ..‬إنشاء حزم الجافا‬

‫استدعاء التصنيف‪:‬‬
‫‪ .1‬إما من خالل كتابة املسار كامل للتصنيف كالتالي‪:‬‬
‫;)…( ‪geometry.Rectangle rec2 = new geometry.Rectangle‬‬
‫‪ .2‬استدعائها عن طريق الحزمة ‪import geometry.Rectangle‬‬
‫‪ . 3‬استدعاء الحزمة كاملة بما فيها التصانيف االخرى ‪;*.import geometry‬‬
‫إنشاء حزم في بيئة النتبينز‬
‫عن دما تنشئ برنامج ك ألول م رة س تجد حزمة افتراض ية تحم ل عالم ة املربع األص فر ال ذي‬
‫ٌف‬
‫يشبه الحزمة‪/‬الطرد‪/‬الصندوق وبداخله صن واحٌد وهو الصنف األساسي ‪.Main Class‬‬

‫ًا‬ ‫ًا‬
‫وفر برنامج النتبينز طريقة سهلة إلنشاء الحزمة في كل مرة تنشئ مشروع جديد ‪ .‬ولكن أثناء‬
‫عمل ك في املش روع ق د تحت اج لإنش اء ح زم أخ رى تحت وي على مجموعة من األص ناف ذات‬
‫العالقة‪.‬‬
‫خطوات إنشاء الحزمة في برنامج نتبينز‬
‫(‪ )1‬الضغط بزر الفأرة األيمن على الحزمة ثم اختيار انشاء حزمة‬
‫‪ .2‬نافذة إنشاء حزمة‬
‫‪ .2‬حزمة ‪ secondPackage‬بعد اإلنشاء‬
‫انتهت املحاضرة‬

You might also like