・throwは正常系から異常系へ切り替える(例外を投げる)ために書く
・try-catchは異常系の処理を記述するために書く
・throwsは明示された例外を投げる可能性があることを伝える
・throwsの明示されたメソッドを呼び出しても動作が正常である限り普通例外は発生しない
(上位スコープまで処理を一気に飛ばすための行儀悪いコードでもない限り)