我想知道如何重写 ArrayList
子类中的 indexOf()
方法。我需要使用相同的方法来访问 私有(private) transient elementData
var。
我该如何解决我的设计问题?
编辑:将对 elementData[i] 的调用更改为类似的 this.get(i) 是否是一个有效的解决方案(实际上是允许的?)。它会以某种方式破坏或破坏逻辑吗?
最佳答案
基本上你不应该这样做。如果您想要创建一个行为方式与 ArrayList
不同的集合,请使用组合。 ArrayList
的私有(private)细节是私有(private)的,这是有充分理由的;它们是可能在版本之间发生变化的实现细节,您的代码不应该关心它们。
(可能扩展ArrayList
实际上是一种有效的方法,但在我看来不太可能。你还没有说出你真正想要实现的目标,只是什么阻止了您无法实现这一目标。如果您能告诉我们更多有关总体情况的信息,我们就更有可能提供帮助。)
关于java - 我想扩展ArrayList来实现但无法访问element Data private var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11764085/