أساسيات لغة جافا - عالم البرمجة
الأحرف المستخدمة في وضع الأسماء في جافا. أي إسم نضعه لمتغير, دالة, كلاس, كائن إلخ.. يسمى identifier في البرمجة. في جافا كل عنصر نريد خلقه علينا إعطاءه إسم خاص, ...
أساسيات لغة جافا \| عالم البرمجة

[![](/img/avatars/avatar13.jpg)](https://3alam.pro/guest)[Guest User](https://3alam.pro/guest)

جديد التنبيهات

![عالم البرمجة](/img/site/logo/3alampro@600x.png)[عالم البرمجة](/)

- عالم البرمجة
- [المقالات](https://3alam.pro/articles)
- [الدورات](https://3alam.pro/series)
- [سؤال و جواب](https://3alam.pro/questions)
- [المبرمجين](https://3alam.pro/programmers)
- [دعم المبدعين](https://3alam.pro/features)
- [دخول](/login)
- [اشتراك](/register)

![عالم البرمجة](/img/site/logo/3alampro@600x.png)[عالم البرمجة](/)

- [المقالات](https://3alam.pro/articles)
- [الدورات](https://3alam.pro/series)
- [سؤال و جواب](https://3alam.pro/questions)
- [المبرمجين](https://3alam.pro/programmers)
- [دعم المبدعين](https://3alam.pro/features)
- [دخول](/login)
- [اشتراك](/register)

# أساسيات لغة جافا

[![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/uiWGV5As3v0FlAgmFCUno8zWS6xB777kQ4sdFUK8.jpeg)](https://3alam.pro/condorskarlix)[doOu](https://3alam.pro/condorskarlix) منذ 5 سنوات

[دوراتي](https://3alam.pro/condorskarlix/series) [ال Java](https://3alam.pro/condorskarlix/series/do0u001) أساسيات لغة جافا

## بناء برنامج بلغة جافا

يمكننا تعريف أي برنامج مكتوب بلغة جافا على أنه مجموعة من الكائنات مرتبطة مع بعضها البعض بشكل منطقي و متسلسل.

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

المصطلحات الأساسية في لغة جافا هي التالية.

- الكلاس ( Class )

- الكائن ( Object )

- الخصائص ( Instance variables )

- الدوال ( Methods )


## مفهوم الكلاس

الكلاس عبارة عن حاوية كبيرة تستطيع أن تحتوي كل الكود من متغيرات و دوال و كائنات

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/0GGBzhbIVPIjj0r4eU1wD0vRtLv15fe2AZblxvJ1.png)

## مفهوم الكائن

الكائن عبارة عن نسخة مطابقة لكلاس معين.

بما أن الكائن عبارة عن نسخة من الكلاس, يمكننا القول أنه لا يمكن إنشاء كائن إذا لم يكن هناك كلاس.

إذاً في مفهوم برمجة الكائنات نقوم بإنشاء كلاس معين يسمونه blue print أي (النسخة الخام أو النسخة الأصلية) , و بعدها ننشئ نسخة أو أكثر من هذا الكلاس و نفعل بها ما نريد بدون أن نغير محتويات الكلاس الأساسي و هكذا نكون حافظنا على كودات الكلاس الأساسي لأننا نعدل على النسخ و ليس عليه مباشرةً.

الفكرة الأساسية في برمجة الكائنات أنك تقوم بتقسيم البرنامج الواحد إلى عدة كلاسات, و كل كلاس يتم برمجته لتنفيذ ناحية معينة في البرنامج.

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

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/QHbMT0f7z9YWGC5ycRGWLoNk3uw83c7v6S3HvdEb.png)

ملاحظة: الكائن هو نسخة من الكلاس و ليس نسخة من الملف الذي يحتوي على الكلاس.

كما أن الكلاس الأساسي يتم إنشائه بدون إعطاء قيم لمتغيراته و سنرى في دروس لاحقة كيف أننا نغير قيم الكائنات و ليس قيم الكلاس الأصلي مباشرةً.

لا تقلق ستفهم كل شيء في دروس لاحقة.

## مفهوم الخصائص

كل كائن ننشئه من كلاس معين يملك نسخة خاصة به من المتغيرات الموجودة في هذا الكلاس. المتغيرات التي يتم إعطاء نسخة منها لكل كائن من الكلاس هي ما تسمى بالخصائص, مثال:

إذا كان عندنا كلاس إسمه do0o يحتوي على متغيرين x و y, و أنشأنا منه كائنين, الكائن الأول إسمه A و الثاني إسمه B.

هنا سيكون كل كائن يحتوي نسخة خاصة من الأشياء الموجودة في الكلاس do0o.

سيملك الكائن A نسخة خاصة به من المتغيرين x و y لا علاقة للكائن B فيها.

و سيملك الكائن B نسخة خاصة به من المتغيرين x و y لا علاقة للكائن A فيها.

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/NDbSsFScOOGszW8NEF0Tvd8XWEiI02jcoFjNIqQH.png)

## مفهوم الدوال

الدالة ( أو الميثود ) عبارة عن كود جاهز يتنفذ فقط عندما تقوم بإستدعائه.

```java

public void welcome()
{
    System.out.print("welcome Anonymouse");
}
```

ملاحظة: في البرامج الحقيقية لا يتم تعريف جميع الدوال في الكلاس الأساسي في المشروع و الذي يسمى Main Class. بل يتم تعريفهم في كلاس ثاني أو أكثر من كلاس و عند الحاجة يتم إستدعاءهم.

## مبادئ كتابة الكود في جافا

### Case Sensitivity

Case Sensitivity تعني أن لغة البرمجة تميز بين الأحرف الكبيرة و الأحرف الصغيرة.

جافا تعامل الأسماء التي نستخدمها بتأني سواء للمتغيرات, الدوال, الكلاسات, الكائنات إلخ.

مثال: note و Note ليسوا شيئاً واحداً.

بينما في لغات برمجة أخرى مثل HTML لا يهم إذا كانت الأحرف كبيرة أو صغيرة.

مثال: note و Note و NoTe و NOTE هم شيئاً واحداً.

### إسم الكلاس

دائماً إبدأ إسم الكلاس بحرف كبير.

مثال: class First.

إذا كان إسم الكلاس يتألف من أكثر من كلمة, إجعل أول حرف من كل كلمة كبيراً.

مثال: class FirstJavaClass.

### إسم الدالة

دائماً إبدأ إسم الدالة بحرف صغير.

مثال: public void display().

و إذا كان إسم الدالة يتألف من أكثر من كلمة, إجعل أول كلمة تبدأ بحرف صغير و جميع الكلمات التي تليها تبدأ بحرف كبير.

مثال: public void displayUserInfo().

### إسم الملف الذي يحتوي على الكلاس

إسم كلاس الجافا يجب أن يكون مطابقاً لإسم الملف الموجود بداخله.

مثال: إذا كان إسم الكلاس class do0oيجب أن يكون موجوداً في ملف جافا إسمه do0o.java كما في هذه الصورة:

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/GKOscls1iLvhg0X3msetq33gm7SkuYdpQXvT6Q4f.png)

إنتبه: إذا كان إسم الكلاس مختلف عن إسم الملف فإن الـ javac أي المترجم الذي يحول كود الجافا للغة يفهمها الكمبيوتر, لن يستطيع إيجاد الكلاس لأنه يبحث عن الملف أولاً ثم يتوقع أن يكون الكلاس يحمل نفس الإسم, وسيسبب ذلك مشاكل في الكود.

### نقطة البداية

نقطة البداية تسمى Entry Point, و هي تعني أول مكان سيتم فيه تنفيذ الأوامر المكتوبة عند تشغيل البرنامج.

في البرامج الفعلية, سيحتوي برنامجك على أكثر من كلاس حتماً بالإضافة إلى كثير من الملفات و الصور إلخ.. و سترى ذالك في دروس متقدمة.

إذاً كيف سيفهم مترجم لغة جافا (javac) أي كلاس يجب أن يتنفذ في البداية؟

من هنا جاءت فكرة أنه يمكن للمشروع الذي تبنيه أن يحتوي على العدد الذي تريده من الكلاسات, و لكنه يجب أن يحتوي على نقطة إنطلاق واحدة و هكذا سيعرف المترجم من أين سيبدأ بتنفيذ الأوامر. نقطة البداية في جافا هي الدالة public static void main(String\[\] args) و لذلك عند إنشاء أي مشروع جديد تجد هذه الدالة جاهزة فيه.

في جافا يجب أن يحتوي كل برنامج على الدالة main() لأنها نقطة البداية.

### التعليقات

نستخدم التعليقات لنضع ملاحظات حول الكود الذي كتبناه فقط, لكي لا ننسى كيف برمجنا الكود في حال أردنا مراجعته أو التعديل عليه بعد وقت طويل. كما أن التعليقات لا تؤثر إطلاقاً على الكود المكتوب. يوجد أسلوبين لوضع تعليقات في جافا:

تعليق على سطر واحد.

```java
// هذا تعليق يتألف من سطر واحد

```

```java

/* هذا تعليق
 * يتألف من
 * عدة أسطر
 */

```

## الأحرف المستخدمة في وضع الأسماء في جافا

أي إسم نضعه لمتغير, دالة, كلاس, كائن إلخ.. يسمى identifier في البرمجة.

في جافا كل عنصر نريد خلقه علينا إعطاءه إسم خاص, أي علينا تحديد الـ identifier له.

إذاً يتم التمييز بين العناصر في جافا من خلال أسمائهم, أي من خلال الـ Identifiers.

قواعد إلزامية عند إعطاء الأسماء

1. جميع الـ Identifiers يجب أن يبدأوا بحرف كبير بين A-Z أو حرف صغير بين a-z أو رمز الدولار $ أو الشحطة \_.

2. يمنع بدء الـ Identifiers برقم.

3. يمنع استخدام الـ Literals أي القيم true, false و null.

4. يمنع إستخدام أي كلمة من الكلمات المحجوزة ( Keywords ).

5. لا تنسى أن جافا تطبق مبدأ الـ Case Sensitive.


ركز على أول حرف فقط

أمثلة للأسماء التي يسمح باستخدامها: Harmash , name , $money , \_number

أمثلة للأسماء التي يمنع استخدامها: 1st , -cash , @user

## الكلمات المحجوزة في جافا

جميع الكلمات التالية محجوزة للغة جافا, أي لا يمكن إستخدامها كـ Identifiers.

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/NKFsyaW3vUfHT4h11OZUBlWDGj0qKamYn9F9x19w.png)

>>>>>>>

أعجبني
تابع
شارك الدرس


### المحاضر

![](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/uiWGV5As3v0FlAgmFCUno8zWS6xB777kQ4sdFUK8.jpeg)

doOu

[تابعني](javascript:void(0))

### محتوى الدورة

كلمتين عن جافا ببساطة
1
[ال Java](https://3alam.pro/condorskarlix/series/do0u001/lessons/lesson1)المفاهيم الأساسيه للبرمجه غرضية التوجه
1
[مفاهيم نظرى (OOP)](https://3alam.pro/condorskarlix/series/do0u001/lessons/lesson2)الأساسيات وبناء أول برنامج ^\_^
1
[أساسيات لغة جافا](https://3alam.pro/condorskarlix/series/do0u001/lessons/lesson3) الدرس الحالي
2
[برنامج بسيط و انواع البيانات](https://3alam.pro/condorskarlix/series/do0u001/lessons/lesson4)

### الكلمات الدليلية

[java](/questions?tag=java)

### عن الدرس

1 إعجاب
7 متابع
0 مشاركة
13105 مشاهدات
منذ 5 سنوات


### التعليقات (1)

![](https://3alam.pro/img/avatars/avatar15.jpg)

[خالد الحسيني:](https://3alam.pro/khaled-abeco)

جزاكم الله خيرا ،، حقيقي استفدت ،، نرجو المزيد من علمكم لنتنفع

## [عرض المزيد..](https://3alam.pro/condorskarlix/articles) جديد مقالاتي

[![لمحة عن أنظمة العد](https://s3.eu-west-2.amazonaws.com/uploads.3alampro.com/2019/March/x9g3XJeHqDvfQpd48FMHZ0qC5x3nlFJznUHPq1en.png)\
لمحة عن أنظمة العدمنذ 5 سنوات](https://3alam.pro/condorskarlix/articles/do0u1)

### لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !

[اشترك الآن](https://3alam.pro/register)

### عالم البرمجة

منصِّة إثرائية عربية فريدة في مجالها، في العالم العربيّ.

**حلمنا** نشر البرمجة وتعليمها للجميع، بشكل ممتع وسهل ويسير.

**اهدافنا** توفير بيئة رهيبة ليساعدنا الجميع في نشر العلم وإثراء المحتوى العربيّ البرمجيّ.

### تابعنا

### روابطنا

- [الرئيسية](/)
- [المقالات](https://3alam.pro/articles)
- [الدورات](https://3alam.pro/series)
- [سؤال و جواب](https://3alam.pro/questions)
- [المبرمجين](/programmers)
- [دعم المبدعين](/features)
- [راسلنا](/contact-us)

### نحبهم ويحبونا

- [الصناع العرب](http://www.arabsmakers.com/)
- [وسيط للوظائف](https://jobswaseet.com/)
- [شاليه نت](http://shaleeh.net/)
- [cvlego](http://cvlego.com/)
- [برنامج تقسيط ضمان](http://installment.dhman.io/)

صنع بـ  من فريق عالم البرمجة


[عالم البرمجة 2.0](/) ©