الكلاسات والكائنات في Java | Class و Object بشرح مبسّط للغاية

18:00 دقائق مجاني
شرح البرمجة الكائنية من الصفر: ما معنى Class؟ وما معنى Object؟ وكيف نفهم الفكرة بتشبيهات وأمثلة عملية؟

حتى الآن تعلّمت كتابة أوامر مباشرة (طباعة، شروط، حلقات، دوال). الآن سننتقل إلى فكرة مهمّة جدًّا تجعل البرمجة أكثر تنظيمًا: البرمجة الكائنية (OOP).

لا تقلق من الاسم؛ الفكرة أسهل مما تبدو. البرمجة الكائنية تعني أن البرنامج يُبنى من “أشياء” (Objects) تمثّل شيئًا من الواقع: مثل شخص، سيارة، منتج، طالب، حساب بنكي… إلخ.

ولكي نصنع هذه “الأشياء”، نحتاج أولًا إلى “قالب” يصفها. هذا القالب هو Class.

تشبيه بسيط: القالب والكعكة

تخيّل أن لديك قالبًا لصنع كعكة.

  • القالب = Class (وصف/شكل/مواصفات)
  • الكعكة التي تنتج = Object (نسخة حقيقية من القالب)

يمكن أن تصنع من نفس القالب أكثر من كعكة. كذلك يمكنك إنشاء أكثر من Object من نفس Class.

إنشاء Class بسيط: Person

سننشئ Class اسمه Person (شخص). سنضع بداخله “خصائص” (Properties) مثل الاسم والعمر. في Java غالبًا نسمّي هذه الخصائص: Fields أو Variables داخل الكلاس.

class Person {
  String name;
  int age;
}

لاحظ:

  • هذا الكلاس وحده لا يطبع شيئًا ولا ينفّذ شيئًا.
  • هو مجرد وصف: “الشخص عنده اسم وعمر”.

إنشاء Object واستخدامه (الخطوة التي تجعل الكلاس “حيًّا”)

الآن سننشئ كائنًا (Object) من الكلاس Person. إنشاء الكائن يعني: حجز مساحة في الذاكرة لهذا الشخص، ثم تعبئة بياناته.

Person p1 = new Person();
p1.name = "Ahmed";
p1.age = 25;

System.out.println(p1.name);
System.out.println(p1.age);

شرح ما يحدث:

  • Person p1: متغير اسمه p1 نوعه Person.
  • new Person(): إنشاء كائن جديد من Person.
  • p1.name: الوصول إلى خاصية name داخل هذا الكائن.

لماذا نستخدم Class و Object؟

لأنها تجعل برنامجك منظّمًا وقابلًا للتوسع. بدل أن يكون لديك عشرات المتغيرات المبعثرة (name1, age1, name2, age2...) تجمع بيانات الشخص في كائن واحد واضح.

مثال: بدل هذا:

String name1 = "Ahmed";
int age1 = 25;

String name2 = "Sara";
int age2 = 20;

تستطيع أن تفعل هذا بشكل أنظف:

Person p1 = new Person();
p1.name = "Ahmed";
p1.age = 25;

Person p2 = new Person();
p2.name = "Sara";
p2.age = 20;

والآن أصبح من السهل التعامل مع “شخص” كوحدة واحدة.

أخطاء شائعة للمبتدئين

  • نسيان كلمة new عند إنشاء الكائن.
  • محاولة الوصول إلى الخصائص قبل إنشاء الكائن (يؤدي إلى أخطاء).
  • الخلط بين اسم الكلاس (Person) واسم المتغير (p1).

✅ في الدرس القادم سنتعلم طريقة أفضل لتهيئة الكائن مباشرة عند إنشائه: Constructor.