首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于Jtree & DefaultTreeModel,使用Singleton正确吗?

对于Jtree & DefaultTreeModel,使用Singleton正确吗?
EN

Software Engineering用户
提问于 2011-06-28 07:11:51
回答 1查看 184关注 0票数 0

基本上,我有一个使用单一DefaultTreeModel的树视图。

用单例来扩展JTree,用另一个单例来扩展DefaultTreeModel,行吗?

如果没有,那么避免对每个对象使用单例的原因是什么?

EN

回答 1

Software Engineering用户

发布于 2011-06-28 09:00:05

当一个实例在整个程序的使用中必须是唯一的时,Singleton模式通常是最好的。如果您使用的是swing,那么使用单例可能不是一个好主意,除非swing已经使用singleton模式来为您提供实例(从而挫败了自己编写它的目的)。一般来说,应该避免单例,因为在某种程度上,这就像在C++中使用全局变量一样。在整个程序中拥有一个可用的实例意味着可能会失去使用它的位置和它应该处于什么状态的范围。它最终会增加程序中的混乱,如果可以通过共享一个实例来避免,最好这样做。

您可能想要做的是重用相同的Tree实例,您可以通过将它作为参数传递给您要创建的任何框架来实现这种效果。Tree对象可以定义自己的视图,因此,通过使用Tree的单个实例,还可以确保使用它的视图的单个实例(假设以后不对其进行更改)。

票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/87603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档