gpt4 book ai didi

Java方法接受不同父类(super class)的ArrayList,必须使用Interface吗?

转载 作者:行者123 更新时间:2023-12-01 07:08:42 25 4
gpt4 key购买 nike

我有一个名为 findNearest 的方法用于查找最近的 ObjectArrayList 到一点对象。

但是我希望能够调用不同类的 ArrayList 的方法,这些类是以下类的父类(super class)我的基类Entity

例如TreeEntity 的子类,原样Worker 。我希望能够findNearest(x,y,<Arraylist of Trees>)还有findNearest(x,y,<Arraylist of Workers>)

我认为我可以使用接口(interface)来实现这一点,但是有没有更简单/更干净的方法来做到这一点?

谢谢

邓肯

最佳答案

您需要使用协方差:

void findNearest(int x, int y, ArrayList<? extends Entity> items)

请注意,您将无法向列表中添加任何内容,因为您不知道列表实际上应该包含什么类型。

关于Java方法接受不同父类(super class)的ArrayList,必须使用Interface吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18255389/

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