我想知道如何indexOf()
在ArrayList
. 我需要对私有瞬态elementData
变量使用相同的访问超级。
如何解决我的设计问题?
编辑:这可能是一个有效的解决方案,将对 elementData[i] 的调用更改为类似的 this.get(i) (实际上是允许的吗?)。它会以某种方式破坏或破坏逻辑吗?
我想知道如何indexOf()
在ArrayList
. 我需要对私有瞬态elementData
变量使用相同的访问超级。
如何解决我的设计问题?
编辑:这可能是一个有效的解决方案,将对 elementData[i] 的调用更改为类似的 this.get(i) (实际上是允许的吗?)。它会以某种方式破坏或破坏逻辑吗?
你不应该,基本上。如果您想创建一个行为方式与ArrayList
. 的私人细节ArrayList
是私人的,这是有充分理由的;它们是可以在版本之间更改的实现细节,您的代码不应该关心它们。
(扩展实际上可能ArrayList
是一种有效的方法,但不太可能是 IMO。你还没有说出你真正想要实现的目标,只是阻止你实现它的原因。如果你能告诉我们更多关于大局的信息,我们'更有可能提供帮助。)
您可以创建一个容器,该容器提供与 ArrayList 相同的方法,并具有 ArrayList 类型的字段(用于数据存储)。然后将所有 ArrayList 方法添加到容器类中,这些方法在 ArrayList(字段)上执行相应的方法,但要覆盖的方法除外。