实现通用接口和覆盖方法

时间:2016-10-29 07:04:25

标签: java

我正在尝试使用泛型,并且有两个问题。

  1. 由于我创建了我的接口public interface testInterface<K,V>,这意味着如果我实现我的接口“TestInterface”,并将类型定义为&lt;整数,字符串&GT;分别为public class UsingGenerics implements TestInterface<Integer, String>。然后,当我在方法中定义类型时,我会覆盖,我可以使用&lt;整数,字符串&GT;还是超级那些正确的?我可以public void loop(BiConsumer<Integer, String> action)public void loop(BiConsumer<Object, String> action),对吗?试着确保我理解BiConsumer<? super K,? super V> action当我覆盖它时我能做的确切意义

  2. 我收到此错误

      

    具有相同的擦除,但都不会覆盖

    我无法弄清楚原因。

  3. 这是界面

    import java.util.function.*;
    public interface test<K,V> {
    
        public void loop(BiConsumer<? super K,? super V> action);
    
    }
    

    这是班级

    public class UsingGenerics implements TestInterface<Integer, String> {
    
        @Override
        public void loop(BiConsumer<Object, String> action)
        {
            //Something here
        }
    
        public static void main(String[] args) {
    
        }
    
    }
    

0 个答案:

没有答案