2012-07-19 88 views
3

我试图改善以下方法的类型安全:确保与Java泛型类型安全

A<String> method(B<String> arg); 

我如何确保这种方法不调用原始类型B和编译器总是检查为指定的字符串类型?

回答

6

你不能阻止某人调用原始类型的方法。

原因是为了与预先通用版本的Java向后兼容。

1

如果编译器警告开启(-Xlint:unchecked),你会得到一个警告,如果该方法被调用原始类型:

警告:[选中]选中转化用一个=法(新型B ());