エラー文(例外)を理解して、すぐにプログラムを修正できるようになりたいなと思い初心者が覚えておくべきエラー文を中心に勉強してみます。(Java Programming Silverレベル)
今回はNullPointerExceptionです。
NullPointerExceptionとは
NullPointerExceptionはnull値(何も入っていない値)の参照型変数を参照しようとした時に発生する例外です。メソッドでnullを呼び出してしまった時によく見かけます。
null値を参照しようとした時とは
null値を参照してNullPointerExceptionを発生させたいと思います。
NullPointerException サンプルコード
String nTest = null;
nTest.equals(“Programmer Life”);
上記コードを実行すると変数「nTest」のnullをequalsメソッドが参照したためNullPointerExceptionが発生します。
変数をStringでとりあえず定義し( String str; )あとで値を入れようと思っていたもののそのままだったり、うまく値を入れられず初期値のnullを参照してしまったりで初心者には割と馴染みのある例外ではないでしょうか。
初期値については以下でまとめています。
NullPointerException サンプルコード
せっかくなのでもう一つNullPointerExceptionが発生する例です。
String nullTest = null;
char[] ch = nullTest.toCharArray();
StringをCharへtoCharArrayメソッドを使用して変換しようとしたが、変数nullTestを参照しnullだったためにNullPointerExceptionが発生する。
おわり
NullPointerExceptionはNullとついている分なんとなく原因が想像しやすくていいですね。