الرئيسيةعريقبحث

المتغيرات في لغة الجافا variables


☰ جدول المحتويات


المتغيرات

في لغة الجافا لكل متغير نوع معين، عند تعريف المتغير يتم وضع نوعه قبل اسم المتغير، وهذه بعض الأمثلة على ذلك : ;double salary ;int vacationDays ;long earthPopulation ;boolean done

مع ملاحظة الفاصلة المنقطة (semicolon) عند نهاية كل تعريف، وهي ضرورية لإنهاء كل جملة يُراد تنفيذها.

المتغير يجب أن يبدأ بحرف وأن يتكون من سلسلة من الأحرف(letter) أو الأرقام(digit) بدون مسافات فيما بينها. مصطلح الأحرف (letter) والأرقام (digit) في لغه الجافا يتضمن معنى أوسع من باقي لغات البرمجة. فالمقصود بالأحرف (letter) في الجافا: ( 'A' إلى 'Z') و( 'a' إلى 'z') و'_' وأي رمز آخر مخصص يمثل حرفاً في اللغات الأخرى، وهنا بعض الأمثلة لتوضيح هذه الفكرة بشكل أفضل : بإمكان مستخدمي اللغة الألمانية استعمال حرف ' ä ' كمتغير داخل البرنامج، وعلى سبيل المثال أيضاً اليونانيون يستطيعون استعمال' π '. و كذلك الأرقام (digit) فالمقصود منها في الجافا : (0 - 9) أو أي رمز مخصص يمثل رقماً في أي لغة أخرى مثل (+) و(@) فهذه الرموز بالإضافة إلى المسافة (space) لا يُمكن استعمالها لتمثيل اسم متغير. جميع الحروف أو الرموز التي تكوّن اسم المتغير تعتبر عنصراً هامّاً في تمييزه من قبل الجافا وكذلك حالة الأحرف (upper case) أو (lower case).

مع العلم بأن هناك كلمات محجوزة لعمليات خاصة من قبل الجافا لا يجوز للمبرمج استعمالها كإسم لمتغير. ويمكنك تعريف أكثر من متغير في سطر واحد ثم وضع فاصلة منقطة في نهاية السطر، مثال :

; int i , j ولكن هذه الطريقة غير محبذة لأن تعريف كل متغير في سطر مخصص له يجعل البرنامج أسهل للقراءة.

تهيئة المتغيرات

بعد الانتهاء من تعريف اسم المتغير ونوعه يجب أن يتم تهيئته للاستخدام وذلك عن طريق ربط هذا المتغير بقيمة معينة، ويتم ذلك من خلال كتابة الجملة التي تربط هذا المتغير بالقيمة المخصصة له والتي تسمى بالـ (assignment statement). لا تنسى أنه من غير الممكن أن يتم استخدام متغير لم يتم ربطه بأي قيمة. في المثال التالي سيُظهر لك الجافا أن خطأً ما قد تم ارتكابه في هذه السطور (error message):

;int vacationDays ;(System.out.println(vacationDays

يمكنك أن تربط قيمة معينة بمتغير تم تعريفه مسبقاً في البرنامج وذلك عن طريق وضع اسم المتغير على اليسار ومن ثم تضع علامة (=) ومن ثم تضع القيمة المراد استخدامها على يمين علامة الـ (=)، مثال على ذلك :

;int vacationDays ;vacationDays = 12

ويمكنك أيضاً أن تقوم بتعريف متغير وربطه بقيمة معينة في نفس الوقت، مثال :

;int vacationDays = 12

ومن الجدير بالذكر أنه باستطاعتك أن تقوم بتعريف متغير في أي مكان تريده من البرنامج الذي تقوم بكتابته، مثال :

;double salary = 65000.0 ;System.out.println(salary) ;int vacationDays = 12

يعتبر من الأفضل في الجافا أن تقوم بتعريف المتغير بالقرب من المكان الذي يتم استخدامه فيه.

الثوابت

في الجافا تُستخدم كلمة (final) للدلالة على ثابت، على سبيل المثال :

Public class Constants

}

public static void main (String[] args)

} ;final double CM_PER_INCH = 2.54 ;double paperWidth = 8.5 ;double paperHeight = 11 { ; System.out.println("paper size in centimeters:" + paperWidth * CM_PER_INCH + "by" + paperHeight * CM_PER_INCH )

{

استخدام كلمة final يمكننا من أن نعرف متغيراً و نوضح القيمة التي يحملها مرة واحدة فقط وستبقى هذه القيمة ثابتة ولن تتغير حتى نهاية البرنامج. ومن العادات المتبعة غالباً في الجافا أن يتم تسمية الثوابت بحروف حالتها (upper case). غالباً في الجافا نجد بأن الأكثر شيوعاً هو أن يتم تعريف ثوابت يمكن استخدامها في أكثر من (method) والتي تنتمي إلى نفس الـ (class)و عادة ما تسمي هذه الثوابت بـ ( class constants). عليك أن تعرف الـ (class constant) بـكتابة هذه الكلمتين static final. هنا مثال يوضح استخدام الـ (class constants):

public class Constants2

}

public static void main (String[] args)

{ ;double paperWidth = 8.5 ;double paperHeight = 11 ; (System.out.println("paper size in centimeters:" + paperWidth * CM_PER_INCH + "by" + paperHeight * CM_PER_INCH } ;public static final double CM_PER_INCH = 2.54 {

لاحظ أن تعريف الـ (class constant) يظهر خارج الـ (main method)، وذلك لكي نمَكنّ من استخدام هذا الثابت من قِبَل (methods) أخرى تنتمي إلى هذا الـ (class) نفسه. هناك معلومة أخرى يجب توضيحها وهي أنه إذا تم كتابة كلمة (public) من ضمن تعريف الـ(class constant) فإن ذلك سيمَكِّننا من استخدام هذا الثابت للـ (methods) التي تنتمي إلى (classes) أخرى، كما هو الحال في المثال الذي ذكرناه في الأعلى Constants2.CM_PER_INCH

المراجع

المرجع : Horstmann, Cay S., 1959- Core Java Volume 1 Fundamentals 8th edition

موسوعات ذات صلة :