草庐IT

getFooId

全部标签

java - 编译器放弃我的类型转换?

我对我必须做些什么才能使这段代码起作用感到困惑。似乎编译器优化了我需要的类型转换,或者这里有其他我不明白的地方。我有各种对象存储在实现接口(interface)Foo的数据库中。我有一个对象bar,它包含我用来检索Foo对象的数据。bar有这些方法:ClassgetFooClass()LonggetFooId()我将类和ID传递给具有此签名的方法,该方法委托(delegate)给hibernate,hibernate根据类和ID检索主题:publicTget(Classclazz,Serializableid);Foo有不同的实现者,其中一些hibernate对象有一个Longid,而