{"componentChunkName":"component---src-templates-post-template-jsx","path":"/history/posts/2020-10-12--001--05","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Eunyoung","subtitle":"작업 기록 블로그","copyright":"© All rights reserved.","author":{"name":"EunYoung","twitter":"#"},"disqusShortname":"","url":"https://ssongey.github.io"}},"markdownRemark":{"id":"3c76201d-7f7d-5e0a-afd4-b59119ec37cf","html":"<h2>아이템73) 추상화 수준에 맞는 예외를 던져라</h2>\n<p>아래 계층의 예외를 예방하거나 스스로 처리할 수 없고, 그 예외를 상위 계층에 그대로 노출하기 곤란하다면 예외 번역을 사용하라.<br>\n이때 예외 연쇄를 이용하면 상위 계층에는 맥락에 어울리는 고수준 예외를 던지면서 근본 원인도 함께 알려주어 오류를 분석하기에 좋다.</p>\n<h3>예외 번역 (exception translation)</h3>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/144ec8f1faa90fa93ee35ab5f474aef8/f6f78/001--05-1.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 932px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 32.08333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAABJ0AAASdAHeZh94AAAA1UlEQVQY032R61KEMAyFef+HFFraKq5CrxS6zByTsDujDvrjm5OTlpCk3aAUhkHBOoeXvocxFilnpJQEHwJCjMiUi+QjxemhIRDxPGff2h2do0KjMXibJkyEtQ5Ka4zjCE30/SD5fd9Rtw3ruqLWKlpK+eGP40BXtx1lrfLBFa014be/4rhThykXfM4zlmU51XvSM54px3nW2+2DYi9dXcEr4R92bLR7h7avNKaBUlqUR5+pKO/rOdpfxZ5IwUoXQ8zwKcsDeOowPJQXnb/t6T/4Do/9BfaMy+MAhtmWAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"001  05 1\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/144ec8f1faa90fa93ee35ab5f474aef8/f6f78/001--05-1.png\"\n        srcset=\"/devHistoryBlog/static/144ec8f1faa90fa93ee35ab5f474aef8/8ff5a/001--05-1.png 240w,\n/devHistoryBlog/static/144ec8f1faa90fa93ee35ab5f474aef8/e85cb/001--05-1.png 480w,\n/devHistoryBlog/static/144ec8f1faa90fa93ee35ab5f474aef8/f6f78/001--05-1.png 932w\"\n        sizes=\"(max-width: 932px) 100vw, 932px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<h3>예외 연쇄 (exception chaining)</h3>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/5e6a515a7eabbcd7526f44090da7bfe5/dc616/001--05-2.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 933px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 70%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAABJ0AAASdAHeZh94AAAB50lEQVQ4y4VSiZKqQAzk/79QlGsGFOW+D1H7pQe86u3WUtWVzBBCOt1WHMfwgwBaayilcD6fUZQlsjxHXhRomgY587xAUZSCwpxLqcm3Gt7xPAwDrNPpBHu/h+t6cBwHe8kd18VBctfzEARqvXNcc88a22a9+66TbzlY1/XSkBP6PnQYyseBiZxU69BM7fkBoihaWci7NE1xvlwMkzTLkCSJAaec5yusruteFKqqMhTruv7Ck/YwjPh8Ho/HV05YbT+glabkz5H5g67foqDv33d13aBt11reMz7B8zzP0lCK9SmBPsZCTwl8Q08pbfZ3uSRGJE5KUZqmNR//BNNwHEfUUlQSQvlJ/Y0avUwwTZMB63/CV0OCxbxg/oyfxeM4mHzYzqTJc2feTa89WtHxiJ1twxOL+KLo4eBA6dDQDUVdqs1IBzCGYSS1vllJKKrTBbEoXslK7vc7LNK6iA1o3CTNzOL54n6/rXFTb1kWLLfbGgU3yYlli9frdZ1wkHGNenWJvm3Q1LLHIkcmApSyP+ZVWWw7HF+7nMaPfNstm1qNWIUG9g87KPcA5exwVD7cQGjrCHHoI42Pvyr7n8r8ayvGTYsaSSaTCXX6se83D4pPezH002t/NjTKSfE8ryozTr9Y4y+Q8j92iymaEYoa9AAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"001  05 2\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/5e6a515a7eabbcd7526f44090da7bfe5/dc616/001--05-2.png\"\n        srcset=\"/devHistoryBlog/static/5e6a515a7eabbcd7526f44090da7bfe5/8ff5a/001--05-2.png 240w,\n/devHistoryBlog/static/5e6a515a7eabbcd7526f44090da7bfe5/e85cb/001--05-2.png 480w,\n/devHistoryBlog/static/5e6a515a7eabbcd7526f44090da7bfe5/dc616/001--05-2.png 933w\"\n        sizes=\"(max-width: 933px) 100vw, 933px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>","fields":{"tagSlugs":["/tags/책리뷰/","/tags/이펙티브자바/"],"slug":"/history/posts/2020-10-12--001--05"},"frontmatter":{"title":"[책리뷰/Effective Java] 예외","tags":["책리뷰","이펙티브자바"],"date":"2020-10-12","description":"아이템73) 추상화 수준에 맞는 예외를 던져라"}}},"pageContext":{"slug":"/history/posts/2020-10-12--001--05"}},"staticQueryHashes":[]}