1. يتم توفير سلسلة استثناء في مُنشئ Java. وهذا هو ، يمكننا توصيل الاستثناءات باستمرار في سلسلة استثناء من خلال المُنشئ ...
السبب في أن اتصال الاستثناء مطلوب هو فهم الكود ، وكذلك قابلية الحفاظ على القراءة والبرنامج ...
نحن نعلم أنه في كل مرة نرمي استثناء ، نحتاج إلى محاولة التقاط ... ثم ليس الكود منتفخًا جدًا ...
إذا تمكنا من تسلسل الاستثناءات في اتصال استثناء ، فإننا نلتقط فقط استثناءات التغليف الخاصة بنا ، فنحن نعلم أن RunTimeException يمكن اكتشافها تلقائيًا ومعالجتها بواسطة JVM دون محاولة التقاط ..
بالطبع ، يمكننا تحديد فئة الاستثناء الخاصة بنا ليتم اشتقاقها من RunTimeException ، ثم تمرير غلاف المستوى الواحد. إذا ظهر الاستثناء ، فإن JWM يخرج مباشرة من خلال RunTimeException المخصص
(السبب) هي سلسلة الاستثناءات الخاصة بنا ... لذلك ، جميع استثناءاتنا هي الإخراج ، مما يقلل الكثير من رمز معالجة الاستثناءات. . .
يوفر Error RundimeException استثناء فقط ---> آلية لإنشاء طرق لتنفيذ سلاسل الاستثناءات. . . يجب استخدام استثناءات أخرى من خلال البدء
بناء اتصال استثناء ...
الجزء التالي من التعليمات البرمجية هو مثال بسيط على اتصال الاستثناء ... يمكنك طباعة استثناءات تحدث في جميع أنحاء البرنامج بأكمله. .
الفئة العامة testt {public static void a () يلقي استثناء {// أعلى استثناء للتعامل مع المحاولة العليا {b () ؛ } catch (استثناء e) {رمي استثناء جديد (e) ؛ }} public static void b () يلقي الاستثناء {// أعلى استثناء للتعامل مع Try Superior Try {c () ؛ } catch (استثناء e) {رمي استثناء جديد (e) ؛ }} public static void c () يلقي الاستثناء {// أعلى استثناء للتعامل مع المحاولة المتفوقة {رمي nullpointerxception جديد ("استثناء مؤشر CLOUL في سلسلة الاستثناء ..") ؛ } catch (NullPointerException e) {رمي استثناء جديد (e) ؛ }} public static void main (string [] args) {try {a () ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ }}}2. جرب الصيد ... أخيرًا هناك ضعف ، وهو الاستثناء. على سبيل المثال ، ثلاثة محاولات متداخلة معا. يمكن أن يحاول الاثنان المصيد في الداخل حذف المصيد .... بدوره مباشرة حاول أخيرًا ..
بالنظر إلى الكود التالي ، وجدنا أن معلومات استثناء 2 كانت مفقودة
الفئة العامة myTest {public void open () يلقي استثناء {رمي استثناء جديد () {public string toString () {return this.getClass (). getName ()+"CeryImportException" ؛ } ؛ } ؛ } public void close () يلقي استثناء {رمي استثناء جديد () {public string tostring () {return this.getClass (). getName ()+"Close Exception" ؛ } ؛ } ؛ } public void three () rems {رمي استثناء جديد () {public string toString () {return this.getClass (). getName () + "three" ؛ } ؛ } ؛ } ؛ } public static void main (string [] agrs) {mytest mt = new MyTest () ؛ حاول {try {try {mt.open () ؛ } أخيرًا {system.out.println ("delete open") ؛ Mt.Close () ؛ }} أخيرًا {system.out.println ("Delete Close") ؛ Mt.three () ؛ }} catch (استثناء ex) {ex.printStackTrace () ؛ }}}تناقش المقالة أعلاه باختصار سلسلة استثناءات Java وخسارة الاستثناء هي كل المحتوى الذي شاركته معك. آمل أن يعطيك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.