有没有办法从反射中获取Class? 我想做的是,我已经为 hazelcast-3.2.3 实现了自定义序列化器。我不想为每个类编写单独的序列化器(我需要将其对象存储在 Hcast 中)。
我想要这个
class TestSerializer<T> {
Class<T> classType;
Public Test(){
classType = T.someway() //if there is any method to get that;
}
}
因为我在 hazelcast.xml
中配置序列化器,所以无法在构造函数参数中传递 Class
。
最佳答案
我假设您确实在问如何在运行时获取泛型类型 T 的类,而不仅仅是一个类。
最简单的方法是将其作为参数传递给构造函数,但如果您真的,真的想通过反射来做到这一点,您可以使用一个技巧,例如: Jackson 使用它依赖于匿名子类。为此,请阅读如何 TypeReference
有效,尤其是 Super Type Tokens
当然,我可能会非常偏离你想做的事情。如果我是这样,请纠正我:)
关于java - 有什么方法可以从反射中获取 Class 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24583979/