الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود جاهز مع ال output التابع له بس محتاج شرحه

مغلق
بدأه silentboy في 23 يونيو 2006 · 7 رد · 613 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

إخواني بالله في هذه الايام أحاول أن افهم Exception جيدا

واجهني هذا الكود

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class NewClass{
public static void main(String args[]){
	try{
		throwException();
	}
	catch (Exception exception){
		System.err.println("Exception handled in main");
	}
	doesNotThrowException();
}
public static void throwException() throws Exception{
	try{
		System.out.println("Method throwException");
		throw new Exception();
	}
	catch (Exception exception){
		System.err.println("Exception handled in throwException");
		throw exception;
	}
	finally{
		System.err.println("finally excuted in throwException");
	}
}
public static void doesNotThrowException(){
	try{
		System.out.println("Method doesNot ThrowException");
	}
	catch(Exception exception){
		System.err.println(exception);
	}
	finally{
		System.err.println("Finally executed in does notThrowException");
	}
	System.out.println("End of method doesNotThrowException");
}
}

وهذا ال output

-------------------------------------------------

method throwException

Exception handled in method throwException

finally excuted in throwException

Exception handled in main

Method doesNotThrowException

Finally executed in doesNotThrowException

End of method doesNotThrowException

-------------------

ارجوالشرح بالتفصيل وجزاكم الله خيرا

تم تعديل هذه المشاركة بواسطة مجدي محمود في 23 يونيو 2006 في 11:04

#2

ساشرح لك مثال بسيط لتفهم Exception

		//String  موضوع في number
		String number ="12";
		//ممكن السترنج يكون بداخله مش رقم مثلا حرف او اشارة 
		//المبرمج يريد من المستخدم ان يضع معطيات ولازم تكون ارقام
	try {
		//حاول تحويل الرقم من سترنج الى 
		//double

		Double.parseDouble(number);
	} catch (NumberFormatException e) {
		//عالج الحالة التي لا يكون فيها داخل السترنج رقم
		System.out.println("please Only Numbers");
	}

وكمان له استخدامات كثيرة مثل ادخال ملفات لمعالجة عدم وجود الملف وغيرها الكثير

لست متواجد بشكل يومي

#3

السلام عليكم

استاذي وأخي محمود مجدي أشكرك على الشرح

انا فاهم ال Exception شوية

بس محتاج افهم كلمة throw

قصدي اول مايلاقي كلمة throw وين يروح

على اي catch

بارك الله فيك

#4

بنفذ throw واذا استطاع بروح على catch

لست متواجد بشكل يومي

#5

throw لها نفس المعنى الإنجليزي تبعها

وهو يرمي

مثل من يرمي حجراً

فالبرنامج يرمي خطأً

لفهم أصح لهذه الكلمة إليك المثال التالي

أنا أريد أن أضيف عنصرk إلى للمصفوفة c إذا كان المتغير D أكبر من صفر أما إذا كان أقل من صفر أريد أن أرمي خطأ من النوع NotAplicapleException

if(d>0){
int a=new int[c.length+1];
for(int i=0;i>a.length;i++)
a=c;
a[a.length-1]=k;
c=a
}
else throw new NotAplicapleException();//هذا الكلاس من صنعي أهم شيء فيه أن يرث Exception class

أرجو أن أكون قد أفدتك

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#6

بارك الله فيكم

يعني انا فهمت ارمي الخطأ بيدور على catch مناسبة تمسك هذا الخطأ

سلام

#7

بسم الله الرحمن الرحيم,

أخي اذا كنت تريد فهم ال exception فاقرأ هذا الموضوع في java tutorial علي موقع sun.com

#8

عند رمي الخطأ

فهناك حالتين

إما أن تحله باستخدام try/catch

أو تقوم بترك هذه المهمة لكل من يستدعي هذه الميثود بإضافة throws إلى رأس المثيود كالتالي

public void insert throws NotAplicapleException
حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…