Java8のdefaultメソッドでthisを使う、そして例外へ応用する

2016/06/26

Java8からdefaultメソッドを使用することで、interfaceに実装が持てるようになった。
defaultメソッド内で this を使うとthisは個別実装クラスを指すことになる。

これは例外のStackTraceを補完する情報として利用できる。
sampleDefault()で例外を投げたとすると、StackTraceには次のようになる。

この情報だけではSampleImplが実装クラスであるとわからず、Caller.javaの該当行数を見ないといけない。

sampleDefaultの中でthisを使い、Exceptionの引数messageに入れてあげるとすると、StackTraceにSampleImplの情報を表示することができる。

-Java
-