پردازش استثنایی در جاوا
اسلاید 1: Exception Handling in Java
اسلاید 2:
اسلاید 3:
اسلاید 4:
اسلاید 5: راه های کلی برخورد با خطاهابرخورد و مدیریت برخورد (Handling the Error)توقف اجرااز سر گیری کاری که باید انجام گیرد و یا کار معادلپخش کردن خطا (Propagating the Error)برنامه ای که این تابع را فراخوانی کرده مطع کرده و به او اجازه می دهیم که هر طور مایل است با این خطا برخورد کند.
اسلاید 6: پخش کردن خطا (Propagating the Error)بازگرداندن کد خطامقدار بازگشتی تابع با مقدار بازگشتی خطا با هم تداخل پیدا می کنندبرنامه ای که تابع را فراخوانی می کند می بایست بعد از هر بار فراخوانی کد خطا را بررسی کند.استفاده از یک متغیر سراسری برای اعلام خطابه طور کلی استفاده از متغیر سراسری خوانایی و قابلیت اطمینان برنامه را کاهش می دهد و حتی عیب یابی را نیز مشکل می کند.برنامه ای که تابع را فراخوانی می کند می بایست بعد از هر بار فراخوانی متغیر سراسری خطا را بررسی کند.Exception راه حل بهتری برای این کار است.
اسلاید 7: توضیح دلیل خطا و وضعیت حاصلچگونه می توان یک خطا را توصیف کرد؟به کمک یک کد عددیبه کمک یک پیغام متنیشرایط خطا ممکن است اطلاعاتی بیشتر از یک فیلد داشته باشدمی توان یک شرایط خطا را با یک شی بیان کرد.
اسلاید 8: Basic Java Syntax8Error Handling: ExceptionsIn Java, the error-handling system is based on exceptionsExceptions must be handed in a try/catch blockWhen an exception occurs, process flow is immediately transferred to the catch blockBasic Formtry { statement1; statement2; ...} catch(SomeException someVar) { handleTheException(someVar);}
اسلاید 9: Exceptionدر جاوا دو کلاس برای اشیای خطا در نظر گرفته شده است که همه کلاسهای خطاها از آنها ارث می برند.خطاهای در بیشتر مواقع از نوع Exception هستند.از آنجایی که شی خطا باید بین توابع مختلف دست به دست گردد باید از یک کلاس که به طور کلی اشیای قابل دست به دست شدن را نمایندگی می کند ارث ببرد. (Throwable)
اسلاید 10: Basic Java Syntax10Exception HierarchySimplified Diagram of Exception HierarchyThrowableErrorIOExceptionRuntimeExceptionException…
اسلاید 11: Basic Java Syntax11Throwable TypesError A non-recoverable problem that should not be caught (OutOfMemoryError, StackOverflowError, …)Exception An abnormal condition that should be caught and handled by the programmerRuntimeException Special case; does not have to be caughtUsually the result of a poorly written program (integer division by zero, array out-of-bounds, etc.) A RuntimeException is considered a bug
اسلاید 12: Basic Java Syntax12Multiple Catch ClausesA single try can have more that one catch clauseIf multiple catch clauses are used, order them from the most specific to the most generalIf no appropriate catch is found, the exception is handed to any outer try blocksIf no catch clause is found within the method, then the exception is thrown by the method try { ...} catch (ExceptionType1 var1) { // Do something} catch (ExceptionType2 var2) { // Do something else}
اسلاید 13: Basic Java Syntax13Try-Catch, Example ... BufferedReader in = null; String lineIn; try { in = new BufferedReader(new FileReader(book.txt)); while((lineIn = in.readLine()) != null) { System.out.println(lineIn); } in.close(); } catch (FileNotFoundException fnfe ) { System.out.println(File not found.); } catch (EOFException eofe) { System.out.println(Unexpected End of File.); } catch (IOException ioe) { System.out.println(IOError reading input: + ioe); ioe.printStackTrace(); // Show stack dump }
اسلاید 14: Basic Java Syntax14The finally ClauseAfter the final catch clause, an optional finally clause may be definedThe finally clause is always executed, even if the try or catch blocks are exited through a break, continue, or returntry { ...} catch (SomeException someVar) { // Do something} finally { // Always executed}
اسلاید 15: Basic Java Syntax15Thrown ExceptionsIf a potential exception is not handled in the method, then the method must declare that the exception can be thrownpublic SomeType someMethod(...) throws SomeException { // Unhandled potential exception ... } Note: Multiple exception types (comma separated) can be declared in the throws clause Explicitly generating an exceptionthrow new IOException(Blocked by firewall.); throw new MalformedURLException(Invalid protocol);
اسلاید 16: Basic Java Syntax16SummaryCode that may give rise to an exception must be in a try/catch block or the method must throw the exceptionThe finally clause is always executed regardless how the try block was exited
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.