Java 有什么方法可以让学生从反思中得到教训吗?
有什么方法可以让学生从反思中得到教训吗? 我想做的是,我已经为hazelcast-3.2.3实现了自定义序列化程序。我不想为每个类(我需要在Hcast中存储对象)编写单独的序列化程序 我想要这个Java 有什么方法可以让学生从反思中得到教训吗?,java,reflection,Java,Reflection,有什么方法可以让学生从反思中得到教训吗? 我想做的是,我已经为hazelcast-3.2.3实现了自定义序列化程序。我不想为每个类(我需要在Hcast中存储对象)编写单独的序列化程序 我想要这个 class TestSerializer<T> { Class<T> classType; Public Test(){ classType = T.someway() //if there is any method to get that; } } 类TestSe
class TestSerializer<T> {
Class<T> classType;
Public Test(){
classType = T.someway() //if there is any method to get that;
}
}
类TestSerializer{
类类型;
公开考试(){
classType=T.someway()//如果有任何方法可以得到它;
}
}
因为我正在
hazelcast.xml
中配置序列化程序,所以无法在构造函数参数中传递Class
我假设您真的在问如何在运行时获取泛型类型T的类,而不仅仅是类
最简单的方法是将它作为参数传递给构造函数,但是如果你真的,真的想通过反射来实现,你可以使用Jackson使用的一个技巧,它依赖于匿名子类。要做到这一点,请仔细阅读工作原理,尤其是
当然,我可能会对你想做的事发疯。如果我是,请纠正我:)我假设您真的在问如何在运行时获取泛型类型T的类,而不仅仅是类 最简单的方法是将它作为参数传递给构造函数,但是如果你真的,真的想通过反射来实现,你可以使用Jackson使用的一个技巧,它依赖于匿名子类。要做到这一点,请仔细阅读工作原理,尤其是
当然,我可能会对你想做的事发疯。如果我是:)由于类型擦除,您的
TestSerializer
无法在内部获取该类型,请更正。这些信息必须从外部提供
这意味着您必须重构如何通过配置来实现它。由于类型擦除,您的
TestSerializer
无法在内部获取该类型。这些信息必须从外部提供
这意味着您必须重构如何通过配置完成它。我不是在代码中创建它的对象。我正在.xml文件中配置。HazelCast调用它,hcast期望使用默认/非参数构造函数。你不能在创建
SomeInterface
的地方使用泛型来创建你想要调用的方法吗?我不是在代码中创建它的对象。我正在.xml文件中配置。HazelCast调用它,hcast期望使用默认/非参数构造函数。您不能在创建SomeInterface
的中使用泛型,并使用您想要调用的方法吗?