2012-05-10 99 views
3

我正在处理一个泛型类,我想使用Class.cast()来执行一些转换以避免这些令人讨厌的未经检查的转换警告或方法上的@SupressWarning注释。Java Class.cast()与普通的cast相比效率如何?

我觉得Class.cast()应该和直接转换基本相同。但是像所有的反思方法一样,情况可能并非如此。有谁知道他们之间的确切区别?

+3

请参阅http://stackoverflow.com/questions/243811/when-should-i-use-the-java-5-method-cast-of-class – Crozin

+0

我和你一起关于你对所有这些警告的感情,但是我所做的摆脱它们只是让Eclipse编译器在项目级忽略它们。 –

+1

你可能想看看:[http://stackoverflow.com/questions/1555326/java-class-cast-vs-cast-operator](http://stackoverflow.com/questions/1555326/java- class-cast-vs-cast-operator) –

回答

3

我推荐尽可能在@SuppressWarnings上使用Class.cast()。

这里不关心性能。如果您遇到性能问题,请描述您的应用程序,如果事实证明这是一个热点,我会非常惊讶。