Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
.4القواعد الساسية لبرمجة جافا لكمتادبععة اي دبرنامععج دبلغععة الجافععا ،لدبععد مععن اتبععاع القواعععد الساسععية المتمثلععة فععي الشععكل العععام و صيغة كمتادبة الوامر و المتعليمات و اولوية ترتيبها في البرنامج.
جمل الرخراج output statement ييعمت ععبر System.outك ائن الرخرج ات القياسس ي ،standard output Objectحي ث يس مح للبرنامج بعرض فئة من الرموز على الشاشة .و ييسمترخدم مع الدوال المتالية: ي :System.out.println oتس مترخدم لطباع ة سلس لة م ن الرم وز و القي م ف ي س طر واحد ،ثم تجعل الشؤشر يقفز الى السطر المتالي .و الشكل العام لها هو: سلسلة من الرموز " +معامل"(System.out.println ;) , ي :System.out.print oتسمترخدم لطباعة سلسلة من الرموز و القيم في سطر واحد، مع دبقاء الشؤشر في نفس السطر .و لها نفس الشكل العام للدالة السادبقة كما يلي: سلسلة من الرموز " +معامل"(System.out.print ;) , ي :System.out.printf oتسمترخدم لطباعة صيغة مرخرجات formatted output ي محددة و منسقة ،حيث ترخصص لكل نوع من البيانات رمز الصيغة الخاص دبه على ان يسبق هذا الرمز علمة النسبة الئوية .%و الشكل العام لها هو: سلسلة من الرموز مع رمز صيغة " ,معامل"(System.out.printf ;) ,
و الجدول التالي يوضح رمز الصيغة و استخدامه. الوصف Description لطباعة عدد صحيح integer لطباعة عدد حقيقي float or double لطباعة حرف واحد character لطباعة سلسلة string
11
رمز الصيغة formatted symbol d f c s
Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
اما الجدول التالي ،فيوضح مهمة بعض الرموز التستخدمة في برنامج جافا: الوصف Description يجعل الشؤشر يقفز للسطر المتالي نقل الشؤشر لبداية السطر يجعل الشؤشر يقفز مسافة Tab لطباعة العلمة \ لطباعة العلمة "
الرمز symbol \n \r \t \\ \"
جملة التضمين import statement ي تسمترخدم جملة المتضمين لساعدة الرترجم Compilerفي معرفة مكان ال classالراد ي اسمترخدامها في البرنامج ،حيث توجد هذه ال classفي الغالب داخل حزمة .و لمتضمين اي حزمة في البرنامج ،ييسمترخدم الشكل المتالي: ; import package_name . class name اسم التصنيف
نقطة
اسم الحزمة
كلمة محجوزة
***امثلة عملي على بيئة Java netbeans 8.1 ل اول :نصب بيئة البرمجة netbeans8.1او اي اصدار تابع لها عن طريق تنصيب JDKثم netbeansنفتسها )الصندوق الزرق(. ل ثانيا :اضبط متغير البيئة set environmentمن النظام الوجود في لوحة التحكم. ملحظة :قد يقوم برنامج ال netbeansبضبط متغير البيئة بصفة تلقائية. سؤال الحاضرة: .1اكتب برنامج بلغة جافا يطبع التالي: oجملة ترحيب ببرمجة لغة الجافا. ل oبيانات عامة متستخدما جمل الرخراج الختلفة. oتضمين classفي البرنامج.
12
Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
جمل الدرخال input statement oالدرخال بواسطة Scanner Class لدخ ععال دبيان ععات للبرنام ععج )قع عراءة دبيان ععات م ععن لوح ععة الفاتي ععح( دباس ععمترخدام Scanner ،classلدبد من اتباع الخطوات المتالية: .1تضمين الحزمة java.utilالتي تحمتوي على ال Scanner classلسمترخدامها في البرنامج كما يلي: ;import java.util.Scanner .2تكععوين ك ععائن مععن نععوع Scannerداخ ل البرانامج )و ذلك م ن اج ل الق راءة م ن لوحة الفاتيح( ،كما يلي: ;)=new Scanner(System.inاسم كائن Scanner و ه ع ععي جمل ع ععة يمت ع ععم مع ععن خلله ع ععا تحدي ع ععد اسع ععم الك ع ععائن م ع ععن ن ع ععوع Scannerليمت م اس ععمترخدامه ف ععي البرنام ععج لسععمتدعاء دوال الدخ ععال الرخمتلف ععة حس ععب ن ععوع القيم ععة الدخلة. .3
تحديد اسم ممتغيرة لسمتقبال و ترخزين البيانات الدخلة فيها ،كما يلي: Int number; /*for integer number*/ ;)( .nextIntاسم الكائن=number
ملحظات: .1لدخال دبيانات من نوع doubleنسمترخدم الدالة ()nextDouble .2لدخال دبيانات من نوع Stringنسمترخدم الدالة ()nextLine .3هناك طرق اخرى لدخال دبيانات من لوحة الفاتيح او ملف مثل: BufferedReader & BufferedWriter
سشؤال العملي: دباسمترخدام ،Scanner Classاكمتب دبرنامج جافا يقرأ دبيانات تذكرة سفر ثم يطبعها.
13
Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
انواع الثوابت و التغيرات في لغة جافا ل أول :الثوابت :Constantsهي اسماء تعطى لواقعع فعي العذاكرة ذات قيعم ثادبمتعة و ل يمكن أن ي تمتغير خلل فرترة تنفيذ البرنامعج .و تسعمترخدم فعي حعال المتصعريح دبعالقيم الثادبمتعة المتععارف عليهعا مثل ،pi=3.14و قيم الوزان و تحويل العملت. الشكل العام للتصريح بالقيم الثابتة: ;(access-modifier) type constant-name=value القيمة اسم الثابت النوع معدل الوصول )ارختياري (optional ل ثاني ا :التغي رات :variablesهععي اسععماء تعطععى لواقععع فععي الععذاكرة ذات قيمععة غيععر معروفععة ،و قادبلع ععة للمتغييع ععر خلل ف ع عرترة تنفيع ععذ البرنامع ععج .و للمتصع ععريح دبممتغيع ععرة داخع ععل البرانامع ععج نسع ععمترخدم الشكل التالي: ;(access-modifier) type variable-name اسم التغيرة النوع معدل الوصول )ارختياري (optional
النواع :typesو تعني نوع البيانات السمترخدمة في البرنامعج ) (data typeسعواءا كععانت ثادبمتععة ي constantأو ممتغيرة . variableو توجد انواع عديدة تسمترخدم في معظم لغات البرمجة .و من اهم النواع ما يلي: Types
references data type pointer array struct class
Primitives data type real logical symbols float true char double false String
Integer short int long byte
*make different examples of data types.
14
Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
العمليات في لغة الجافا oالعمليات النطقية logical operations العمليات النطقية في لغة جافا تمتضمن العلمات النطقية المتالية: ي ANDو تمثل ب&& ي ORو تمثل ب|| ي NOTو تمثل ب! و يمكن مزج أكثر من علمة منطقية مثلa && b || c : و يكون ناتج العملية النطقية إما trueأو .false oالعمليات الحتسابية arithmetic operations ي تمثل العمليات الحسادبية ،/ ،* ،- ،+كما في اللغات الخرى .و ترتب هذه ل العمليات حسب السبقية .فالضرب و القسمة أول ثم الجمع و الطرح إل اذا كانت هذه العمليات تحمتوي على القواس ،في هذه الحالة ،يمتم فك القواس قبل ي كل شسي ،ثم تجرى العمليات حسب السبقية. oالعمليات العلئقية تمتضمن العمليات العلئقية العلمات المتالية: >=< ، => ، =! ، == ، < ، و هي تدخل في تكوين الشرط .condition
جمل التكرار ي تسمترخدم جمل المتكرار لمتنفيذ مجموعة من المتعليمات لعدد من الرات .و من أهم هذه الجمل ما يلي: for statement o ل تسمترخدم لمتنفيذ تعليمة أو مجموعة من المتعليمات لعدد من الرات وفقا لشرط معين ،و الشكل العام لها كالمتالي: مقدار الزيادة كلمة محجوزة نوع المتغيرة ممتغيرة المتحكم القيمة الدبمتدائية شرط )for (int control-variable=initial-value ; condition ; increment { . block تعليمة او أكثر . statements . }
ملحظة :يمكن ان تكون القيمة الدبمتدائية و الشرط و مقدار الزيادة في صورة تعبير رياضسي. 15
Dr. Mabroka A.M
o
.CS602: Java Programming
Fall2016
while statement تسمترخدم لمتنفيذ تعليمة أو مجموعة من المتعليمات لعدد من الرات في حالة تحقق الشرط ،حيث يمتم اخمتبار الشرط في كل مرة للمتحقق من صحمته .في حالة عدم تحقق الشرط ،يمتم الخروج من الحلقة .و الشكل العام لها كالمتالي: القيمة الدبمتدائية Initial-value كلمة محجوزة
شرط
)while (condition { . block تعليمة او أكثر . statements تغير الشرط . condition changing }
ملحظات
جملة do….whileلها نفس مميزات جملة whileلكنها ترخمتلف عنها في تنفيذ الحلقة و الدخول فيها مرة واحعدة علعى القعل دون اخمتبععار للشعرط ،بعكعس جملعة whileالتي يمتم فيها المتحقق من ل الشرط اول قبل الدخول في الحلقة. ي ي تس ع ععمترخدم تعليمع ععة breakلهنه اء الحلق ة و الخ روج منه ا ،دبينم ا تس مترخدم continueللنمتق ال دبالمتحكم الى حلقة المتكرار من جديد دونما تنفيذ للمتعليمات التي تلي تعليمة .continue **تطبيق امثلة على ما سبق.
16
Dr. Mabroka A.M
.CS602: Java Programming
Fall2016
جمل التحكم ت تتستخدم لتنفيذ تعليمة او اكثر في حالة تحقق الشرط .و من اهمها ما يلي: If statement o ي تسمترخدم لمتنفيذ تعليمة او اكثر في حالة تحقق الشرط ،و الشكل العام لها: شرط كلمة محجوزة )if (condition { . block تعليمة او أكثر . statements . }
o
If else statement ي تسمترخدم لمتنفيذ تعليمة او مجموعة من المتعليمات في حالة تحقق الشرطع ،و في حالة عدم تحقق الشرط ،يمتم تنفيذ المتعليمات التي تلي جملة else كلمة محجوزة شرط )if (condition { . block تعليمة او أكثر . statements تغير الشرط . condition changing } كلمة محجوزة else { . block تعليمة او أكثر . statements تغير الشرط . condition changing
و إل
}
17
Dr. Mabroka A.M
o
.CS602: Java Programming
Fall2016
switch statement ي تسمترخدم لمتنفيذ تعليمة او اكثر في حالة ان المتعبير الرياضسي يساوي القيمة الناسبة ،و إل ،فإنه ينفذ المتعليمة الصاحبة للفرتراضسي ،defaultو الشكل العام لها : تعبير رياضسي كلمة محجوزة )switch (expression { case value1: تعليمة او أكثر ;statement ;break case value2: تعليمة او أكثر ;statement ;break . . . case valuen: تعليمة او أكثر ;statement ;break تعليمة او أكثر
default: ;statement ;break }
سؤال الحاضرة: **دباسمترخدام لغة جافا ،اكمتب دبرنامج يطبع عملية حسادبية )* (- ،+ ،/ ،و ناتجها.
18