0% found this document useful (0 votes)
31 views

Java Week 1

Uploaded by

khaledhkh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Java Week 1

Uploaded by

khaledhkh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

‫مفردات لغة الجافا‬

‫إن التخاطب مع الجهاز يلتزم معرفة مفردات اللغة التي سوف يستعملها المستخدم وقت كتابة برنامجه وهي‪-:‬‬
‫‪ -1‬األرقام )‪ (Digits‬وهي ‪9, ......... 4 , 3 ,2 ,1 ,0‬‬
‫‪ -2‬الحروف )‪ )Letters‬الكبيرة ‪ Z …….. A‬أوالصغيرة ‪z ……..a‬‬
‫‪ -3‬الرموز الخاصة ( ‪ )Special Symbol‬مثل عالمة اإلستفهام ( ؟ ) والشارحة ( ‪ ) :‬وعالمة الدوالر( ‪) $‬‬
‫وغيرها‪.‬‬

‫أنواع البيانات‬
‫يقصد بالبيانات مجموعة من األرقام أو الحروف أو الرموز أو خليطا ً منها جميعا ً وتنقسم البيانات إلى ما يلي ‪-:‬‬
‫‪ (1‬النوع الحرفي ‪The Character Type‬‬
‫وهو عبارة عن كل الرموز المستخدمة في الحاسب وتتكون من خانة واحدة فقط محصورة بين عالمتي‬
‫التنصيص الفردية ( ’ ) وعادة ما يخصص لهذا النوع ‪ 16‬بت ومداه من ‪ -32767‬إلى ‪.32767‬‬
‫’‪’ A’ ’$ ’ ’ c ’ ’ 3‬‬ ‫ومثال لذلك‬
‫‪ (2‬النوع السلسلة ‪The String Type‬‬
‫السلسلة هي أكثر من رمز واحد من األرقام أو الحروف أو الرموز الخاصة أو خليط منها محصورة بين عالمتي‬
‫تنصيص مزدوجة ( “ ) ‪.‬‬
‫مثال لبعض انواع السالسل‬
‫” ‪” 4 + 3 equal 7‬‬ ‫” ‪” 3 + 2 =5‬‬ ‫” ‪“ This is java program‬‬
‫‪ )3‬النوع الصحيح ‪The Integer Type‬‬
‫وهي مجموعة من البيانات الرقمية التي ال تحتوي على نقطة عشرية أو األس كما تكون خالية من الحروف‬
‫الهجائية والرموز الخاصة فيماعدا الرمز ( ‪ ) -‬للداللة على أنه عدد سالب‪.‬‬
‫‪0‬‬ ‫‪2‬‬ ‫‪567‬‬ ‫مثال فيما يلي بعض األمثلة ‪-1001‬‬
‫واألعداد الصحيحة يمكن تصنيفها بحسب سعة الذاكرة وفقا ً لما يلي ‪-:‬‬
‫العدد الطويل ‪ long‬ويستخدم لتمكين المترجم ‪ compiler‬من حجز سعة تخزين كبيرة مقدارها ‪64‬بت‬ ‫أ‪-‬‬
‫ب‪ -‬العدد الصحيح ‪ int‬وسعة تخزينه ‪32‬بت‬
‫ت‪ -‬العدد القصير ‪ short‬وسعة تخزينه أقل من الصحيح ومقداره هو ‪16‬بت‬
‫ث‪ -‬العدد بالبايت ‪ byte‬يخصص له ‪8‬بت‬

‫‪ )4‬النوع الحقيقي ‪The Float Type‬‬


‫وهي عبارة عن كميات عددية تحتوي على نقطة عشرية ( ‪ ) .‬أي العدد به قيمة كسرية أو القوة األسية كما تكون‬
‫خالية من الحروف الهجائية والرموز الخاصة فيماعدا الرمز ( ‪ ) -‬للداللة على أنه عدد سالب‪.‬‬
‫وفي لغة الجافا يوجد نوعان من األعداد الحقيقية هما ‪-:‬‬
‫أ‪ -‬عدد مضاعف الدقة ‪ double‬ويخصص له ‪64‬بت ويتراوح مداه من ‪ 1.7E-308‬إلى ‪1.7E+308‬‬
‫‪67.8E-2‬‬ ‫‪38.57E-1‬‬ ‫مثال‬
‫ب‪ -‬عدد حقيقي ‪ float‬لتخزينه يحتاج ‪32‬بت ومداه من ‪ 3.4E-038‬إلى ‪3.4E+038‬‬
‫‪3.23‬‬ ‫‪-4.05‬‬ ‫مثال ‪45.67‬‬
‫‪ )5‬النوع المنطقي ‪The Boolean Type‬‬

‫أي الكمية المنطقية التي تعطي نتيجة صحيحة )‪ (true‬أو نتيجة خاطئة )‪ (false‬ويخصص لها ‪8‬بت‬
‫مثال إذا كان ‪ y = 5 , x = 3‬فإن ‪-:‬‬
‫‪ X< y‬تعطي النتيجة (‪)true‬‬

‫المعرفات )‪(identifiers‬‬

‫المعرف هو عبارة عن إسم لمتغير تحفظ فيه بيانات معينة بقصد معالجتها ويشترط فيه اآلتي ‪-:‬‬
‫‪ -1‬ان يحتوى على حروف ابجدية وارقام وعالمة الشرطة التحتية )_( )‪.(under score‬‬
‫‪ -2‬من الضرورى ان يكون اول رمز فى المعرف حرفا ابجديا ويسمح باستخدام الحروف الصغيرة او الكبيرة‬
‫يمكن كذلك استخدام الشرطة التحتية (_) وتعتبر مثل الحرف فى بداية المعرف ولكن يندر حدوث هذا‪.‬‬
‫‪ -3‬يجب ان يكون المعرف خاليا من الرموز الخاصة ماعدا ( _ )‪.‬‬
‫‪ -4‬ال تستخدم الحروف الصغيرة والحروف الكبيرة بالتبادل (اى ان الحروف الكبيرة ليست مكافئة للحروف‬
‫الصغيرة المناظره لها) اى ‪VALUE‬ليست هى نفسها ‪.value‬‬
‫‪ -5‬يفضل ان يكون للمعرف الطول المناسب وان يكون واضحا وذا معنى ومدلول‪.‬‬
‫الكلمات المحجوزة ‪Reserved Words‬‬
‫بلغة الجافا يوجد العديد من الكلمات المحجوزة ال يمكن إستعمالها كإسم لمتغير أو فصيلة (‪ )class‬أو الطريقة‬
‫(‪ )method‬في البرنامج ألن لها معنى خاص للمترجم (‪ )compiler‬ومنها ‪-:‬‬
‫‪abstract‬‬ ‫‪const final this for‬‬ ‫‪float interface throw true‬‬ ‫‪if else char‬‬

‫المالحظات ‪Comments‬‬
‫المالحظة هي عبارة عن رسالة توضيحية لثوتيق وشرح هدف عمل البرنامج وتكتب في أي مكان منه حيث‬
‫اليكون لها أي تأثير ويتجاهلها المترجم وتبدأ المالحظة بإستخدام العالمتين (‪ )//‬وتنتهي بنهاية السطر‪ ,‬ومن‬
‫المنسب أن تبدأ بالرمزين )*‪ (/‬وتنتهي بالرمزين (‪ )*/‬عندما تضم المالحظة أكثر من سطر‪.‬‬

‫‪// This is First program File_1.java‬‬ ‫مثال‬


‫‪// to calculate the average of student grades‬‬
‫أو بالصورة التالية‬
‫‪/* This is First program File_1.java‬‬
‫‪to calculate the average of student grades */‬‬
‫اإلعالن عن المتغيرات ‪Variable Declaration‬‬
‫المتغير هو إسم يخصص له مكان تخزين في الذاكرة ‪ ,‬ويبقى ثابتا ً بينما تتغير قيمته من حين إلى آخر وبواسطته‬
‫يمكن الرجوع إلى القيمة في أي وقت ‪ ,‬ويتم اإلعالن عنه قبل إستخدامه في أي مكان من البرنامج‪.‬‬
‫الشكل العام لإلعالن عن المتغير هو‪-:‬‬
‫;‪Type Identifier_1, Identifier_2,…..‬‬
‫حيث ‪ Type‬نوع المتغير المراد اإلعالن عنه‪ ,‬ويجب ان يكتب النوع بالحروف الصغيرة‪.‬‬
‫…‪ Identifier_1, Identifier_2,‬قائمة بمعرف أو أكثر يفصل بينها بفواصل‪.‬‬
‫ويمكن أيضا ً اإلعالن عن المتغير وتخصيص قيمة له في نفس الوقت بالشكل اآلتي‪-:‬‬
‫;‪Type Identifier_1 = Initial_value_1; Type Identifier_2= Initial_value_2;…..‬‬

‫‪ (1‬متغيرات صحيحة ‪Integer variables‬وهي متغيرات تسمح بتخزين قيمة صحيحة سالبة أو موجبة فيها‬
‫ويعلن عن المتغير من هذا النوع بالحروف )‪.(int‬‬

‫فيه المعرفات ‪ x,y,z‬هي معرفات من النوع الصحيح (‪)integer‬‬ ‫مثال اإلعالن ;‪int x, y, z‬‬
‫أما األمر التالي ;‪ short A,B‬فيه تم اإلعالن عن المتغيرين ‪ A,B‬من النوع الصحيح القصير (‪ )short‬حيث‬
‫سعة كل منهما أقل من النوع الصحيح (‪.)int‬‬
‫في حين اإلشهار ;‪ long Item_Number‬يبين ان المتغيرهو من النوع الصحيح الطويل وسعته أكبرمن‬
‫العدد الصحيح )‪.(int‬‬
‫متغيرات حقيقية ‪Float Variables‬‬
‫هذا النوع من المتغيرات يتم اإلعالن عنه بالحروف (‪.)float‬‬
‫;‪float a, b, c‬‬ ‫الجمل التالية تبين ذلك‬
‫;‪a = 3.5f; b = 5.9f‬‬
‫;‪c = a+ b‬‬
‫سينتج عنها اآلتي ‪-:‬‬
‫‪a = 3.5‬‬
‫‪b = 5.9‬‬
‫‪c= 9.4‬‬
‫متغيرات مضاعفة الدقة ‪Double variables‬‬
‫هي متغيرات يتم اإلعالن عنها بكلمة (‪ )double‬ومثال لذلك ‪-:‬‬
‫;‪double a, b, c‬‬
‫;‪a= 5.5555555‬‬
‫;‪b = 6.6666666‬‬
‫;‪c = a + b‬‬
‫‪a=5.55555555‬‬ ‫وسيكون الناتج كالتالي‬
‫‪b=6.6666666‬‬
‫‪c=12.2222221‬‬
‫متغيرات حرفية ‪Character Variables‬‬
‫هذا النوع من المتغيرات يمكن اإلشهار عنها بواسطة الحروف )‪ ,(char‬وعليه فهي تستوعب خانة واحدة فقط‬
‫لكل متغير‪.‬‬

‫اإلعالن التالي يوضح أن المتغيرين ‪ ch1, ch2‬هما من النوع الحرفي وخصصت القيمة ‪ 65‬للمتغير ‪ ch1‬وهي‬
‫تعادل الحرف (‪ )A‬في نظام شفرة الحاسب المسماة ‪ ASCII‬والمتغير ‪ ch2‬خصصت له القيمة ‪.B‬‬
‫;‪char ch1 = 65‬‬
‫;’‪char ch2 =’ B‬‬
‫متغيرات السلسلة ‪String Variables‬‬
‫يتم اإلعالن عن هذا النوع من المتغيرات بإستخدام الكلمة (‪ )String‬التي تبدأ بالحرف الكبير ‪.S‬‬

‫اإلعالن التالي يوضح ذلك‬


‫;” ‪String str = ” Hi This is Frist Program‬‬
‫البرنامج وجمل اإلدخال واإلخراج‬
‫التكوين األساسي للبرنامج‬
‫البرنامج هو عبارة عن مجموعة من األوامر أو التعليمات المتسلسلة التي مهمتها توجيه الحاسب لفعل أمر‬
‫معين يصدره كاتب هذا البرنامج‪.‬‬
‫‪class identifier_name‬‬
‫{‬
‫;‪Variable_Declarations‬‬
‫;‪statement_1‬‬
‫;‪statement_2‬‬
‫;‪statement_3‬‬
‫‪…….‬‬ ‫‪Program Body‬‬
‫‪…….‬‬
‫;‪statement_n‬‬
‫}‬
‫‪ class‬كلمة محجوزة يبدأ بها البرنامج‪ identifier_name ,‬معرف يمثل إسم البرنامج‬
‫‪ Variable_Declarations‬اإلعالن عن المتغيرات المستخدمة في البرنامج‬
‫‪ Statement‬جملة أو أكثر مهمتها تنفيذ خطوات معينة تنتهي بالفاصلة المنقوطة (;( وهي تمثل بدن البرنامج‬
‫مثال‬
‫‪// This is the first program in java‬‬
‫‪class Example_one‬‬
‫{‬
‫)(‪// This program starts with a call to main‬‬
‫)‪public static void main(String [] args‬‬
‫{‬
‫‪// Output Statement‬‬
‫;)”‪System.out.println(” Hello ! Welcome to the First JAVA program‬‬
‫}‬
‫}‬
‫جملة الطباعة ‪Print Statement‬‬
‫تستخدم في عملية إخراج البيانات والمعلومات على وحدة اإلخراج مثل الشاشة في سطر واحد مهما كان‬
‫عدد جمل )‪ (print‬وتأخد الشكل العام اآلتي‪-:‬‬
‫;)… ‪System.out.print(Expr1 + Expr2+‬‬
‫‪System‬إسم فصيلة موجودة في الرزمة)‪ (Package‬بلغة الجافا تمكن من اإلتصال بقناة اإلخراج المناسبة‬
‫‪Expr2 +Expr1‬يمكن أن تكون ثوابت عددية أو قيم لمتغيرات أو تعبيرات لها قيمة مطلوب إخراجها‬
‫بشرط أن يفصل بينها بالمؤثر (‪ )+‬عوضا عن الفاصلة في بعض اللغات األخرى‪.‬‬
‫مثال الجملة التالية ‪-:‬‬
‫;)‪System.out.print(” ansr →” + 20 + 30‬‬
‫بها ثالثة تعابير يفصل بينها المؤثر (‪ )+‬مهمتها طباعة التعبير األول السلسلة →‪ ansr‬الواقعة بين عالمتي‬
‫التنصيص المزدوجة تتبعها القيمة ‪ 20‬والقيمة ‪ 30‬على التوالي على شاشة العرض بالشكل التالي ‪-:‬‬
‫‪ansr →2030‬‬
‫في حين الجملة ‪:‬‬
‫;))‪System.out.print(” ansr →” + (20 + 30‬‬
‫تنفذ طباعة السلسلة الحرفية أوال ثم العملية الحسابية داخل األقواس وإظهارهما على النحو التالي‪-:‬‬
‫‪ansr→50‬‬
‫في حين الجملتان ‪:‬‬
‫;)‪System.out.print(”The product of ” + 8 + ’*’ + 3‬‬
‫;)‪System.out.print(”equal to” + 24‬‬
‫سيعطيان السطر التالي‬
‫‪The product of 8 *3 equal to 24‬‬
‫رموز الهروب ‪Escape Characters‬‬
‫وهي تستخدم مع جملة اإلخراج لتبين طريقة إظهار المخرجات على شاشة العرض‪ ,‬ويبدأ هذه الرموز بالخط‬
‫المائل (\) ضمن عالمتي التنصيص المزدوجة( “ ) والجدول التالي يبين البعض منها ‪:‬‬

‫طريقة الكتابة‬ ‫الوظيفة‬


‫‪\ddd‬‬ ‫لطباعة العدد بالنظام الثماني (‪)ddd‬‬
‫‪\uxxxx‬‬ ‫لطباعة العدد بالنظام الستةعشري (‪)xxxx‬‬
‫‪\n‬‬ ‫القفز إلى سطر جديد‬
‫‪\t‬‬ ‫التقدم ‪7‬مسافات عمودية قبل الطباعة‬
‫‪\b‬‬ ‫مسافة إلى الخلف‬
‫‪\f‬‬ ‫صفحة جديدة‬
‫\\‬ ‫لطباعة الحرف \‬
‫”\‬ ‫لطباعة عالمة التنصيص “‬
‫’\‬ ‫لطباعة عالمة التنصيص ’‬
‫جملة القراءة ‪Read Statement‬‬

‫هناك نوعان من جمل القراءة‪ ,‬األولى جملة (‪ )read‬لقراءة البيانات من نفس السطر والثانية (‪)readLine‬‬
‫لقراءة البيانات من سطر جديد مع إهمال باقي السطر‪.‬‬
‫الشكل العام لهذه الجملة هو‪-:‬‬
‫;)(‪var = type.valueOf(inData.readLine().trim()).typeValue‬‬

‫حيث ‪ var :‬إسم المتغير المسندة إليه القيمة المدخلة‪.‬‬


‫‪ type‬نوع القيمة المدخلة‪.‬‬
‫)(‪ valueOf‬لتحويل البيانات المشكلة داخليا إلى بيانات يتعرف عليها اإلنسان أي من )‪ (String‬إلى‬
‫نوع (‪ )Intrger‬أو (‪.)Float‬‬
‫‪ trim‬إللغاء الفراغات من كان يسمى (‪.)Buffer‬‬

‫قبل إستخدام جملة القراءة في البرنامج يتم التعريف نوع قناة اإلدخال (‪ )InputStream‬زذلك من خالل‬
‫إستخدام جمل ;*‪ import java.io.‬وتحديد موقع العنوان بالذاكرة من خالل الجملة التالية‬
‫;))‪BufferedReader inData=new BufferedReader(new InputStreamReader(System.in‬‬
import java.io.*;
class read_int_float
{
public static void main(String[]args) throws IOException
{
BufferedReader inData=new BufferedReader(new InputStreamReader(System.in));
int k;
char ch; float x;
System.out.print(” Enter your Integer Number”);
k=Integer.valueOf(inData.readLine().trim()).intValue();
System.out.print(” Enter your Float Number”);
x=Float.valueOf(inData.readLine().trim()).floatValue();
System.out.print(” Enter your Character ”);
ch= (char) inData.read();
System.out.print(” Your Integer Number” + k);
System.out.print(” Your Float Number” + x);
System.out.print(” Your Character ” + ch);
}
}

You might also like