我正在尝试使用类型(是的,这是一个我的世界模组)创建一个ArrayList
(显然是 java )。TileEntity
但是我还需要添加到的对象ArrayList
来实现某个接口。
想到的第一个选项是创建该TileEntity
已实现接口的抽象子类,并将其用作ArrayList
类型。但是考虑到人们通常会创建自己的子类TileEntity
并将它们用作他们通常子类的类,并且我希望人们能够连接到我的 mod,我不能指望他们将除TileEntity
.
我目前的解决方案是if(object instanceof MyInterface)
在添加之前进行检查,但这看起来很难看。当然,有一种方法可以设置 an 的类型,ArrayList
要求一个对象既是 的子类,TileEntity
又是 的实现者MyInterface
。