Java SE 7 Silver対策勉強をしながらメモ 2015/2/6
2015/03/29
本日は例外の続き。
これで参考書の章立てはとりあえず終了!!
明日からは模試と練習問題をやりまくるべし!!
いつものごとくマークダウンで記載したのでそのままJetpack Markdownにお任せでアップします。
コンパイラによってチェックされる = 例外処理が必須
- RuntimeExceptionとそのサブクラスを除くExceptionクラスとそのサブクラスが、コンパイラによってチェックされる例外(例外処理が必須)
主なRuntimeExceptionのサブクラス(例外処理任意)
- AirthmeticException – ゼロ割
- ArrayIndexOutOfBoundsException – 配列範囲外
- ClassCastException – クラスキャスト
- NullPointerException – null参照変数のメソッド実行
- NumberFormatException – 文字列を整数変換
- IllegalArgumentException – 不正な引数
RuntimeExceptionとサブクラスを除いた主なExceptionのサブクラス(例外処理必須)
- ClassNotFoundException – クラスをロードできない
- FileNotFoundException – 対象ファイルがない
- IOException – 入出力関連
複数キャッチのExceptionクラス継承関係に注意!!!
- 複数のcatchブロックを定義するときは下位にサブクラスを書くとコンパイルエラー
- 上位がスーパークラスだとそこでキャッチして到達出来ないコードになるから
[java]
public class Test{
public static void main(String[] args){
try{
method();
}catch(Exception e){
System.out.println(e);
}catch(RuntimeException e){
System.out.println(e);
}
}
static void method(){
int[] array = new int[5];
array[5] = 10;
getRuntimeException();
}
static void getRuntimeException(){
throw new RuntimeException(“Runtime Exception”);
}
}
[/java]
Exceptionクラスのコンパイルエラーの例としてはいささか強引だが
- これはコンパイルエラー
[java]
public class Main{
public static void main(String[] args){
method1();
}
private static void method1(){
method2();
}
private static void method2(){
throw new Exception();//ここでコンパイルエラー
}
}
[/java]
- コンパイルするための例1
[java]
public class Main{
public static void main(String[] args){
method1();
}
private static void method1(){
method2();
}
private static void method2(){
try{
throw new Exception();
}catch(Exception e){
1 2 |
} |
}
}
[/java]
- コンパイルするための例2
[java]
public class Main{
public static void main(String[] args) throws Exception{
method1();
}
private static void method1() throws Exception{
method2();
}
private static void method2() throws Exception{
throw new Exception();
}
}
[/java]
throws指定されたメソッドの呼出し
[java]
class MethodClass{
void method() throws Exception{
System.out.println(“MethodClass”);
}
}
public class MainClass{
public static void main(String[] args){
MethodClass mc = new MethodClass();
mc.method();
}
}
[/java]
- method()にthrows Exceptionを指定しているためコンパイルエラー
- 9行目をtry~catchで例外処理を定義するか、mainメソッドにthrows Exceptionを指定するとコンパイル出来る
きれいごとでも理想的な解答を選択した方が良い!!
- APIドキュメントを読むなど!!
2つ選択するとかちゃんと読む!!
- 問題が何を求めているかを落ち着いてちゃんと読む!!
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。


開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
「UbieとSmartHRが語る プロダクトデザイナーのリアル」に参加しました
UbieさんとSmartHRさんの「UbieとSmartHRが語る プロダクトデ …
-
-
AWS Cloud Roadshow 2016 Osaka Night Event ミッドナイトJAWS
AWS Cloud Roadshow Osaka 2016のナイトイベントでミッ …
-
-
「IBM Cloud Community Summit 2018 フルマネージドデータベースというのは使えるのか?IBM Cloudでのデータ活用事例いろいろ」でIBm Cloudのデータベースサービスを聞かせていただいた
IBM Cloud Community Summit 2018におじゃましました …
-
-
Alexa Skills Kit 最新アップデート(Alexa Day 2019 でのブログ)
以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …
-
-
トラックボールユーザー集合!確実に何かが始まった日。
Logcool社のトラックボールマウス M570や他のトラックボールマウスを愛用 …
-
-
「kintone Café 大阪 Vol.17 〜 kintoneと連携するスマホアプリを作ってみよう! 〜」会場スポンサー初体験!
kintone Café 大阪で弊社の会場を使ってもらいました。 この会社に来て …
-
-
Java SE 7 Silver対策勉強をしながらメモ 2015/1/29
さて本日は少しだけですが、試験対策のメモをいつものごとくマークダウンで記載したの …
-
-
JBUG(Japan Backlog User Group) 記念すべき大阪開催の勉強会1回目に参加しました
JBUGが我らがマイタウン大阪で開催されるとのことで、お久しぶりのTAMさんにお …
-
-
「Engineering Productivity Meetup #2 in 大阪」に参加しました
AWS SSOのしくみを AWS IAM Identity Centerへ移行し …
-
-
DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました
DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました。 全部で …