Skip to content

Latest commit

 

History

History
99 lines (85 loc) · 6.57 KB

report4_2.md

File metadata and controls

99 lines (85 loc) · 6.57 KB

課題レポート4: 例外に慣れよう


残念ながら教科書では例外処理のことを扱っていない。例外が発生するコードとAPIを通して、例外処理に慣れよう。


  • 仕様
    • IntelliJで新規プロジェクトを作成せよ。プロジェクト名は「Report4」とする。
      • 次のようなプログラムを作成・実行し、実行時エラーを発生させよ。
        • 条件1: String型変数 str を宣言し、初期値として null を代入する。
        • 条件2: str.length() の内容を表示しようとする。
  • 動作確認、git+githubの利用
    • 上記を満足するコードを実行すると、str.length()の内容を表示しようとしている行で例外「java.lang.NullPointerException」が発生するはずである。
      • java.lang.NullPointerExceptionが発生していることを確認できたら、
        • (1) IntelliJプロジェクトをGit管理にし、add & commit せよ。
        • (2) GitHubにプロジェクト名と同じリポジトリを作成し、pushせよ。
  • レポート報告事項
    • ステップ1に関しては、pushしたリポジトリURL(作業用URL)を報告するだけで良い。

  • 仕様
    • try-catch構文を用いて、以下の通り例外処理せよ。
      • 条件1: 「NullPointerException」を catch せよ。
      • 条件2: NullPointerExceptionが発生したことを標準出力せよ。出力文は、NullPointerExceptionが発生したことが分かる内容であれば自由とする。
      • 条件3: 例外インスタンスを用いて、getMessage()を出力せよ。
  • 動作確認、git+githubの利用
    • 正しく例外処理を記述できたならば、条件2と条件3の内容が標準出力に出力されるはずである。
      • このことを確認できたら、
        • (1) IntelliJプロジェクトで add & commit せよ。
        • (2) GitHubに pushせよ。
    • 想定: 追加コードは数行程度のはず。
  • レポート報告事項
    • ステップ2に関しては、実行結果を報告せよ。実行結果には、条件2と条件3の出力が含まれているはずである。

  • ステップ1&2で記述したコードは削除して構わない。(pushされてるなら、githubに残っている)
    • いきなり削除するのが怖いならば、コメントアウトしてからステップ3に取り組もう。
  • 仕様
    • 条件1: String型の変数strに、文字列"百二十三"を代入せよ。
    • 条件2: Integer.parseInt(String s)メソッドを用いて、int型変数valueに代入するコードを記述せよ。
  • 動作確認、git+githubの利用
    • 正しく記述できたならば、parseInt()メソッド実行時に例外が発生するはずである。
      • このこと(例外発生)を確認できたら、
        • (1) IntelliJプロジェクトで add & commit せよ。
        • (2) GitHubに pushせよ。
  • レポート報告事項
    • Integer.parseInt()メソッドと発生した例外について、APIリファレンスで調べよ。レポートには、下記を含めること。
      • (1) Integer.parseInt() メソッドの定義のコピペ。(説明文とparameters, returns, throwsの合計4項目を含むこと)
      • (2) 上記コピペ文を読み、項目毎に分かることを解説せよ。
      • (3) 例外の一つに「NumberFormatException」があるはずだ。そのリンクを辿り、NumberFormatExceptionクラスのスーパークラスを探せ。レポートにはそのスーパークラスの名称と、そのクラスの概要説明文(クラス名とConstructor Summaryの間にあるはず)をコピペし、分かる範囲で解説せよ。

  • ペアや友人らと話し合って取り組んで構わないが、コード解説を加えるなど「自分自身の報告書」となるように取り組むこと。試して分かったこと、自身で解決できなかった部分等についてどう取り組んだか、といった過程がわかるように示すこと。(考えを図表や文章を駆使して表現して報告する練習です)
  • レポート作成は好きなツール(ソフトウェア)を使って構わない。ただし下記を含めること。
    • タイトル
      • 今回は「プログラミング2、レポート課題4: 「例外に慣れよう」」。
    • 提出日: yyyy-mm-dd
    • 報告者: 学籍番号、氏名
      • 複数人で相談しながらやった場合、相談者らを「協力者: 学籍番号、氏名」として示そう。
    • 課題説明(概要のみでOK)
    • 結果と考察
      • 課題への取り組みを通し、課題の意義、課題から分かったこと、今後の展望などを述べる。失敗やつまづきがあれば、それらについての失敗分析を含めること。
      • 参考リンク: 実験レポートの書き方
    • その他
      • 通常は感想等をレポートには含めませんが、練習なので課題に取り組みながら何か感じたこと、悩んでいること等、書きたいことがあれば自由に書いてください。(なければ省略OK)

  • 提出物は「レポート」の1点である。
  • レポートは電子ファイルで提出するものとする。
  • 提出先:
    • Google ドキュメントのreport4。
  • 締切: 調整中。