اذهب إلى المحتوى

السؤال

نشر

السلام عليكم انا جديد في تعلم البرمجة واعرف بعض الاساسيات في الخوارزمية والجافا ,كما اني اعرف كيف احسب مثلا محيط الدائرة مثلا بطريقة بسبطة ,لكن وانا اتصف النت وجدت طريقة بدت لي معقدة من حيث المصطلحات او الاكواد وخاصة importو try وcatch  

هذا هو رابط  البرنامج , هل من شرح مفصل وشكرا لكم مسبقا وجزاكم الله خيرا 

http://www.java-examples.com/calculate-circle-area-using-java-example

Recommended Posts

  • 0
نشر

وعليكم السلام.

ببساطة اخي الكريم

import من اسمها تعني استيراد، استيراد مكتبة؟ ومكتبة تعنى مجموعة اكواد واوامر موجهة لأمر معين (مثل IO القراءة والكتابه على الملفات) وبسبب ان هناك الكثير والكثير  من المكتبات فمن غير المعقول تضمينها جميعا ضمن نفس البرنامج، (لانه سيتم تحميلها على الذاكرة عن تشغيل البرنامج) لذلك يترك لك الخيار في استيرادها حسب حاجة برنامجك.

 

public cass ... ضمن لغة الجافا والتي هي Object Oriented Language كل شيء هو كلاس، على عكس لغة ++C والتي ليست 100% OOP. اذا كنت جديدا على مفهوم الكلاس و OOP، بعليك بتطبيق الامثلة والدراسة بالتأني، لانها لا تفهم بالشرح النظري. ولكن باختصار هي تمكنك من انشاء برمجيات ضخمة Enterprise اذا كان التصميم والاستخدام متوافقان من مفاهيم OOP.

 

static void main... هي نقطة انطلاق البرنامج، اي عند التشغيل فان نظام التشغيل يحتاج لنقطة بداية يبدأ منها تنفيذ الكود، وهذا العُرف هو احد مفاهيم OOP، لذلك تجد كلمة static  والتي تعنى امكانية طلب هذه الدالة دون الحاجة لعمل object من الكلاس الذي يحويها، وبمعنى اخر حتى لا تتكر نفس الميثود مع كل object، فهي مشتركة لجميع objects من نفس الكلاس. (ايضا راجع مفاهيم OOP وحاول تطبيق المفاهيم).

 

try - catch  من المنطق البرمجي تعنى (حاول تجريب كود او عمليه معينة) بحيث ان هذه العملية غير موثوق بها 100% بالنجاح فربما تفشل وتؤدي لحدوث خطأ.

مثلا: العمليات الحسابية (الجمع، الطرح، القسمة، الضرب) ننظر لها كعمليات صحيحة لا تحدث اخطاء بل تعطي نتائج، ولكن هناك بعض الحالات ممكن حدوث اخطاء، مثل القسمة على صفر.

لذلك انت تكتب العملية الحسابية ضمن اقواس try، وضمن catch تعالج الخطأ، مثلا اذا كانت القسمة على صفر، ممكن اظهار رسالة للمستخدم لتنبيهه فعدم جواز القسمة على صفر. هذا الامر بدل ان يؤدي لتوقف برنامجك عن العمل، بالعكس يعطيه منطقية اكبر.

طبعا يمكن كتابة اكثر من catch بعد جملة try على اعتبار حدوث اكثر من نوع من الاخطاء، في مثالك نلاحظ ان catch تحوى على IOException بالتالي فجملة catch هذه تعالج فقط الاخطاء التابع ل IO (قراءة وكتابة الملفات والبيانات) ولكن لو كان هناك خطأ اخر متوقع مثل القسمة على صفر يمكن اضافة جملة catch بعدها تحوى على ArithmaticExcption. وهكذا.

 

BufferReader, StreamReader, MemoryReader وغيرها جمعيها من انواع Stream، بعبارة مختصرة فتح قناه بين المصدر (صاحب البيانات) وبين المستهلك (مستهلك البيانات). والهدف هو عدم جلب البيانات دفعة واحدة ولكن جلبها بشكل متدفق (تدفق النهر)، واقرب مثال هو يوتيوب، عندما تقوم بتشغيل فيديو فانه لا يتم تحميل الفيديو دفعة واحدة ولكن يقوم بارسال كمية معينة من البيانات كافية لتشغيل الفيديو لمدة معينة وخلال هذه المدة، يقوم بجلب المزيد والمزيد من البيانات حتى انتهاء الفيديو، لذلك انت تنتظر قليلا في بداية الفيديو.

طبعا هذا الشرح العام نوعا ما هو مناسب لك اكثر من الشرح المفصل للكود، لان الكود لا يفيدك في شيء، بمجرد ان تتعلم المفاهيم تصبح قادرا على فهم وكتابة جميع الاكواد.

 

 

بالتوفيق،،،

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...