かまたま日記3

プログラミングメイン、たまに日常

Class#getInterfaces() の罠

Class#getInterfaces()は自分のクラスが実装している
インターフェースしか検出してくれません。

スーパークラスまで遡って調べたい場合はjakarta commonsのClassUtils#getAllInterfaces、もしくはspringframeworkを使っている方はcommonsのClassUtilsを拡張したorg.springframework.util.ClassUtils#getAllInterfacesを使いましょう。
以下はspringのコード例です。