参照実装
Javaには参照実装というものあるらしい。 調べてみたがよくわからない。 『実装するとこんな感じになるよ』という例と書いてあるサイトもあるし、文面から推測するに別クラスを参照しているようにも見えるし・・・。 結果的によくわからず、これに関連するかもわかっていないが、こんなことがあった。
例えば、このクラス。 javax.xml.stream.events.StartElement インスタンス化されたelementオブジェクトがあるとする。 これをelement.getClass()すると下記のクラスになっている。 com.sun.xml.internal.stream.events.StartElementEvent
リフレクションでオブジェクトのクラスを渡そうとするとき、getClass()を使うと嵌る。 まさか自分がインスタンス化したクラスが別クラスになっているとは思わない。