{"id":28,"date":"2009-05-05T20:25:56","date_gmt":"2009-05-05T18:25:56","guid":{"rendered":"http:\/\/wenzlaff.de\/cgi-bin\/weblog_basic\/index.php?p=28"},"modified":"2021-11-22T17:17:05","modified_gmt":"2021-11-22T16:17:05","slug":"exceptions-nur-fur-ausnahmen-verwenden","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=28","title":{"rendered":"Exceptions nur f\u00fcr Ausnahmen verwenden"},"content":{"rendered":"<p>Exceptions sollen immer nur f\u00fcr Ausnahmen und nicht f\u00fcr den normalen Programmablauf verwendet werden. <\/p>\n<p>Also ist dies ein <strong>NO GO<\/strong>:<\/p>\n<p><code>try{<br \/>\nint i =0;<br \/>\nwhile (true){<br \/>\n                range[i].climb();<br \/>\n                }catch(ArrayIndexOutOfBoundsException e){<br \/>\n}<\/code><\/p>\n<p>Bei eine Endlosschleife die mit einer <code>ArrayIndexOutOfBoundsException <\/code>abbricht wird der Programmablauf \u00fcber die Exception gesteuert. Das ist falsch.<\/p>\n<p>Also Exceptions nur f\u00fcr Ausnahmen verwenden.<\/p>\n<p>Aufgabe: Wie k\u00f6nnte es richtig gemacht werden?<\/p>\n<p>(see Joshua Bloch Item 57)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Exceptions sollen immer nur f\u00fcr Ausnahmen und nicht f\u00fcr den normalen Programmablauf verwendet werden. Also ist dies ein NO GO: try{ int i =0; while (true){ range[i].climb(); }catch(ArrayIndexOutOfBoundsException e){ } Bei eine Endlosschleife die mit einer ArrayIndexOutOfBoundsException abbricht wird der Programmablauf \u00fcber die Exception gesteuert. Das ist falsch. Also Exceptions nur f\u00fcr Ausnahmen verwenden. Aufgabe: &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=28\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eExceptions nur f\u00fcr Ausnahmen verwenden\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[5],"tags":[18,35],"class_list":["post-28","post","type-post","status-publish","format-standard","hentry","category-java","tag-arrayindexoutofboundsexception","tag-exceptions"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/28","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=28"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/28\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=28"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}