gpt4 book ai didi

Java:实现 MutableTreeNode,删除类似的旧方法?

转载 作者:太空宇宙 更新时间:2023-11-04 08:50:53 25 4
gpt4 key购买 nike

我越来越接近完全实现 JTree 来表示 Series 集合。层次结构为“节目”>“季节”>“剧集”。

这些都是类,每个类都实现了 MutableTreeNode 接口(interface)。当开始这个项目时,我不知道我需要这个接口(interface),所以我在 Episode 中定义了“removeFromSeason”,在 Season 中定义了“add(Episode ep)”等方法,..

现在我正在实现这个 MutableTreeNode 接口(interface),我发现许多方法重叠。所以我想知道我应该如何处理这个问题。例如:add(Episode ep) 只接受一个 Episode 作为参数,而 'insert(MutableTreeNode child, int index)' 使用 2 个参数:子节点和索引。在添加剧集中,我只是将剧集添加到 ArrayList 中的随机位置。每个剧集都有一个包含剧集编号的变量,因此这不是问题。

如果我完全替换 add 方法,我还应该给出剧集的索引,这可能会使 ArrayList 变得复杂。或者我会做双重工作,将剧集和 Episode.getNumber() 作为参数传递,这对我来说似乎很愚蠢。

我也可以保留原来的方法和新的方法,让其中一个调用另一个。这对我来说似乎不太正确。

您对如何处理这个问题有什么看法?任何评论表示赞赏:)

危害

最佳答案

当我想实现一棵树时,我提供 TreeModel 的实现,并在其中进行所有树处理。我从不实现 TreeNode 或 MutableTreeNode (节点不需要实现任何接口(interface))。这将业务对象从 UI 问题中解放出来。当然,当发生变化时,必须以某种方式通知 TreeModel。

关于Java:实现 MutableTreeNode,删除类似的旧方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3372859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com