複合パターン、Item、Cluster、および Element を実装する 3 つのクラスがあります。
class Item extends Locatable {
...
}
class Cluster extends Item {
static hasMany = [items:Item]
...
}
class Element extends Item {
...
}
私のドメイン モデルはこれよりも複雑ですが、これは単なる例です。Item のインスタンスがあり、それが Cluster であるか Element であるかを知りたい場合ins.getClass().getSimpleName()
、奇妙なクラス名を取得してItem_$$_javassist_165
います: を実行するprintln ins.toString()
と、正しいクラス名が出力されます (toString
メソッドは を返しますthis.getClass().getSimpleName()
)。
正しいクラス名を取得するには? この"Item_$$_javassist_165"
クラス名は何ですか?