האם אנחנו יכולים לקנן try catch block ב-Java?
האם אנחנו יכולים לקנן try catch block ב-Java?

וִידֵאוֹ: האם אנחנו יכולים לקנן try catch block ב-Java?

וִידֵאוֹ: האם אנחנו יכולים לקנן try catch block ב-Java?
וִידֵאוֹ: Supersection 1, Less Comfortable 2024, נוֹבֶמבֶּר
Anonim

מקוננת נסה בלוקים לתפוס . מטפלי חריגים פחית לִהיוֹת מקונן אחד בתוך השני. א לְנַסוֹת , לתפוס או סוף סוף לחסום יכול בתורו מכיל קבוצה נוספת של נסה לתפוס סוף סוף רצף. בתרחיש כזה, כאשר מסוים בלוק לתפוס אינו מסוגל לטפל בחריג, חריג זה מושלך מחדש.

מזה, האם זה רע שיש ניסיון לתפוס מקונן?

אין צורך בכך מקונן או מרובה לְנַסוֹת - תופס בתוך אותה שיטה. במקרים מסוימים א מקונן נסה - לתפוס הוא בלתי נמנע. למשל כאשר קוד שחזור השגיאה עצמו יכול לזרוק ו יוצא מן הכלל . אבל כדי לשפר את הקריאות של הקוד אתה תמיד יכול לחלץ את מקונן לחסום לשיטה משלו.

שנית, מהו בלוק ניסיון מקונן ב-Java? קוביות ניסיון מקוננות ב-Exception Handling in Java . Java 8תכנות מכוון אובייקט. כפי שהשם מרמז, א נסה לחסום בתוך א נסה לחסום נקרא בלוק ניסיון מקונן ב-Java . זה נחוץ כאשר שונה בלוקים כמו חיצוני ופנימי עלולים לגרום לשגיאות שונות. כדי לטפל בהם, אנחנו צריכים בלוקים ניסיון מקוננים.

בהתחשב בכך, האם נוכל לכתוב מספר בלוקים של ניסיון ב-Java?

בלוקים של נסיונות מרובים : אתה לא יכול לקבל בלוקים של נסיונות מרובים עם תפיסה אחת לַחסוֹם . כל אחד נסה לחסום חייב להיות אחריו לתפוס או לבסוף. עדיין אם אתה לְנַסוֹת לקבל מלכוד יחיד לַחסוֹם ל בלוקים של נסיונות מרובים נוצרת שגיאת זמן קומפילציה.

כמה בלוקים של נסיונות לתפוס יכולים להיות שם?

יש לו בלוק ניסיון אחד ו שְׁלוֹשָׁה בלוקים לתפוס. רק בלוק תפיסה אחד יבוצע בבת אחת, זה תלוי בלוגיקה בתוך בלוק try. בתוך בלוק הניסיון שלי, הקוד מכיל שְׁלוֹשָׁה סוגי חריגים.

מוּמלָץ: