【发布时间】:2013-04-03 19:14:52
【问题描述】:
我正在尝试创建一个ArrayList(显然是java)类型为TileEntity(是的,这是一个Minecraft mod)。但我还需要添加到ArrayList 的对象来实现某个接口。
想到的第一个选项是创建一个实现接口的TileEntity 的抽象子类,并将其用作ArrayList 类型。但考虑到人们通常会创建自己的 TileEntity 子类并将其用作他们通常子类的类,并且我希望人们能够连接到我的 mod,我不能指望他们会继承 @987654328 之外的任何东西@。
我目前的解决方案是在添加之前检查if(object instanceof MyInterface),但这看起来很难看。当然有一种方法可以设置 ArrayList 的类型以要求对象既是 TileEntity 的子类又是 MyInterface 的实现者。
【问题讨论】:
-
你用的是哪个版本的java?
-
这里有类似的问题 - stackoverflow.com/questions/6592832/…
-
我使用的是 java 6. 7 不适用于 mac os 上的 minecraft 开发。 lwjgl 绑定到 awt 画布的方式存在一些奇怪的错误。