Given:      3.    import java.util.*;  
    4.    public class Hancock{  
    5.        //insert code here  
    6.            list.add("foo");  
    7.        }  
    8.    }  Which two code fragments, inserted independently at line 5, will compile without warnings? (Choose two.)  A.    public void addStrings(List list){  B.    public void addStrings(List<String> list){  C.    public void addStrings(List<? super String> list){  D.    public void addStrings(List<? extends String> list){  答案:BC  选这两个对吗?只有D运行报错,其它的编译我没看到什么报警。

解决方案 »

  1.   

    LZ看清题目,题目问的是compile without warnings
    A没有加泛型参数,所以是有一个泛型参数警告
    D是编译错误,原因在你另一个帖子中回答过了
    只有B和C正确,且没有警告
      

  2.   

    A.    public void addStrings(List list){
    这个应该有警告的jdk1.5以后有的泛型你的jdk不会是1.4的吧
      

  3.   

    A那是必须有的,是不是有@SuppressWarnings("unchecked")啊