مقدمة إلى البرمجة الشيئية: الكلاس والكائن
أسلوب يجعل البرنامج قريبًا من الواقع: نصف «نوع الشيء» مرة واحدة في كلاس، ثم ننشئ منه نسخًا كثيرة هي الكائنات.
- تعرّف البرمجة الشيئية OOP، وتميّز بين الكلاس class والكائن object بمثال من الواقع.
- تحدد خصائص attributes الكلاس وأفعاله methods من وصف أو مخطط.
- تُنشئ مشروعًا في NetBeans يحتوي كلاسًا رئيسيًّا Main وكلاسًا آخر.
- تُنشئ كائنًا من كلاس باستخدام الكلمة new.
١البرمجة الشيئية OOP
Object Oriented Programming، وتُسمّى البرمجة الكائنية أو كائنية التوجّه: نمط برمجة يعتمد على الكائنات والفئات لتنظيم الكود. ولغة جافا ترتكز على هذا الأسلوب.
| الكلاس Class | الكائن Object | |
|---|---|---|
| التعريف | تمثيل شامل لنوع معين؛ قالب أو مخطط blueprint | نسخة من الكلاس |
| فيه | الخصائص والأفعال المشتركة | قيم خاصة بهذه النسخة |
| العدد | كلاس واحد | كائنات كثيرة منشأة منه |
٢مثال: المنزل
٣مثال: السيارة
لو قلنا «لدينا سيارة» فنحن نتحدث عن صنف السيارات عمومًا. ولو قلنا «سيارة كامري 2022 ستاندرد بيضاء» فنحن نتحدث عن نسخة محددة. فالسيارة كلاس، والكامري 2022 كائن منه.
٤الخصائص والأفعال
تُمثَّل بالمتغيرات variables
تُمثَّل بالدوال (الطرق)
فيتكوّن الكلاس من variables و methods. والكلاس هو العمود الفقري في جافا: كل شيء تقريبًا يُكتب داخله.
٥إنشاء المشروع والكلاس الرئيسي
- سمِّ المشروع باسم وصفي يدل على وظيفته، مثل Library.
- سمِّ الكلاس الرئيسي Main، وفيه الدالة main؛ ومنه يبدأ التنفيذ.
- من القائمة: File ← New Project ← Java with Ant ← Java Application ← Next.
- اكتب اسم المشروع في Project Name: Library.
- تأكد من تفعيل Create Main Class واكتب:
library.Main(اسم الحزمة library ثم نقطة ثم اسم الكلاس Main)، ثم اضغط Finish.

٦إنشاء أكثر من كلاس في المشروع
يمكن أن يحتوي المشروع كلاسات متعددة: كلاس Main فيه الدالة main ومنه تُنشأ الكائنات، وكلاس منفصل لتعريف الكتاب Book. لإضافة الكلاس Book:
- في نافذة Projects انقر بالزر الأيمن على الحزمة library ← New ← Java Class.

- اكتب في Class Name: Book، وتأكد أن Package هي library، ثم اضغط Finish.

- صار في المشروع ملفان: Main.java و Book.java داخل الحزمة library.

package library; public class Main { public static void main(String[] args) { Book bk1 = new Book(); }}
السطر Book bk1 = new Book(); ينشئ كائنًا اسمه bk1 من الكلاس Book بالكلمة new. سنملأ الكلاس بالخصائص والدوال في الدرس القادم.
تحدٍّ برمجي: كلاس السيارة
مبني على أمثلة الدرسحوّل مخطط Car أعلاه إلى كود جافا.
- كلاس Car فيه الخصائص color و type و model و year.
- ثلاث دوال: start و accelerate و stop، تطبع كل منها رسالة.
- في Main أنشئ الكائنين Car1 و Car2 بقيم المخطط، واطبع نوع كل سيارة ثم استدعِ start للأولى.
class Car{ // الخصائص // الدوال} public class Main{ public static void main(String[] args) { // أنشئ Car1 و Car2 }}
💡 تلميح 1
💡 تلميح 2
حاول بنفسك أولًا.
class Car{ String color; String type; String model; int year; void start() { System.out.println(type + " started"); } void accelerate() { System.out.println(type + " is accelerating"); } void stop() { System.out.println(type + " stopped"); }} public class Main{ public static void main(String[] args) { Car car1 = new Car(); car1.color = "Green"; car1.type = "Toyota"; car1.model = "024X"; car1.year = 2022; Car car2 = new Car(); car2.color = "Blue"; car2.type = "Hyundai"; car2.model = "Fe SEL 2.0T AWD"; car2.year = 2021; System.out.println(car1.type); System.out.println(car2.type); car1.start(); }}
توقّع وتحقّق
أجب قبل أن تنظر إلى الشرح. التصحيح فوري، وإجاباتك تُحفظ.
«سيارة كامري 2022 بيضاء» تمثّل:
الكلمة التي تنشئ كائنًا:
في مخطط UML، الجزء الأوسط من مستطيل الكلاس فيه:
الاسم المفضّل للكلاس الذي فيه الدالة main:
الخلاصة
- الكلاس قالب عام، والكائن نسخة محددة منه.
- الكلاس = خصائص (متغيرات) + أفعال (دوال).
- الكلاس الرئيسي Main فيه main ومنه يبدأ التنفيذ.
- يُفضّل كل كلاس في ملف مستقل داخل الحزمة نفسها.