使用在接口中定义的方法来调用克隆方法

问题描述 投票:0回答:1

因此,为了简洁明了,我列出了一系列形状,这些都是实现我的Shape接口的所有形状(圆形,正方形等)。

现在,我试图深克隆/复制此列表中的每个形状并将其放置在新列表中。我使所有形状都实现了Clonable,并制作了自己的方法来制作它们的深层副本。

问题是,当它们仅定义为Shapes时,我无法达到clone方法。我的问题是我如何掌握克隆方法,而不必将其铸造为具体形状。

我一直在考虑并谷歌搜索,但是我似乎找不到合适的答案。所以我有了一个主意。

我可以添加一个方法“ void callCloneMethod();”在我的形状界面中并实现调用每种具体形状的clone()方法吗?IOW可以通过接口实现的方法调用非接口实现的方法。 ?

谢谢你。

java interface copy clone
1个回答
1
投票

您是否尝试让Shape接口扩展Cloneable接口?如果我没有记错的话,这应该允许您为任何Shape调用该方法。然后,您当然应该实现clone方法。希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.