首页 > 解决方案 > 使用实现的类调用接口参数方法时出错

问题描述

我有一个接收 2 个参数的方法:接口列表。当我尝试使用实现该接口的类列表调用此方法时出现错误。

输入必须是类类型,我不想将其更改为接口列表。

List<Io> oldList;
List<Io> newList;
handleIo(oldList, newList); //Here I get the error

public void handleIo(List<IIo> oldIos, List<IIo> newIos) {...}

public class Io implements IIo {...}

public interface IIo {...}

我认为这是接口的想法,我无法弄清楚有什么问题。要求更改我发送给该方法的参数类型的错误。

标签: javainterfacemethod-signature

解决方案


首先,您不应该以大写字母开始您的方法(命名约定很重要)。

但是对于您的问题:将方法签名更改为以下内容:

public void handleIo(List<? extends IIo> oldIos, List<? extends IIo> newIos)


推荐阅读