3

我正在尝试提高以下方法的类型安全性:

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

如何确保不使用原始类型调用此方法B并且编译器始终检查指定的字符串类型?

4

2 回答 2

6

您不能阻止某人使用原始类型调用方法。

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

于 2012-07-19T06:31:17.193 回答
1

如果打开编译器警告 ( -Xlint:unchecked),如果使用原始类型调用该方法,您将收到警告:

警告:[unchecked] 未经检查的转换 A a = method(new B());

于 2012-07-19T06:32:04.770 回答