gpt4 book ai didi

java - 如何使用不同类型的列表重载方法?

转载 作者:行者123 更新时间:2023-12-01 17:50:05 24 4
gpt4 key购买 nike

是否可以重载参数为List<>的方法不同类型?

例如,我希望创建两个这样定义的方法:

public void getChanges(List<TypeOne>){}
public void getChanges(List<TypeTwo>){}

但是,由于这两种方法都接受 List ,有冲突。有什么方法可以使方法考虑列表中的对象类型吗?

对我来说,编译器没有意识到签名确实与 List<TypeOne> 不同,这似乎很奇怪与 List<TypeTwo> 不同.

最佳答案

您必须给它们不同的名称,因为上面的方法具有相同的删除

有关具体泛型类型的信息不会存储在运行时中,因此,如果您保留上述签名,那么如果您传递任何对象列表作为参数,JVM 将无法实现在运行时中应该调用什么方法。

有关删除的更多信息,请参阅https://docs.oracle.com/javase/tutorial/java/generics/erasure.html

关于java - 如何使用不同类型的列表重载方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51238424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com