6

在使用工厂类和方法、模式等方面,我是一个完全的新手——事实上,我是在浏览 Java 相关问题时第一次在 Stackoverflow 上了解到它们的 :-)

在回答我之前的问题时,有人建议我研究在我的 GUI 开发中使用 Builder 模式,因此我正在寻找易于理解的示例,演示如何使用此模式将应用程序的用户界面放在一起,并且方法链等

谢谢阅读。

4

4 回答 4

6

可能还有其他(更好的)示例,但这里有一个。

使用 时GridBagConstraints,可以使用这个可怕的构造函数:

public GridBagConstraints(int gridx, int gridy,
                          int gridwidth, int gridheight,
                          double weightx, double weighty,
                          int anchor, int fill,
                          Insets insets, int ipadx, int ipady) 

但我认为它无法使用。人们通常最终使用空构造函数并设置各种公共属性来覆盖默认值。

作为替代方案,可以使用构建器,如下所示:

somePanel.add(
    getContent(),
    new ConstraintsBuilder()
        .gridLocation(1, 1)
        .gridSize(1, 1)
        .weight(0.0, 0.0)
        .anchor(NORTHWEST)
        .build() );

只是一个例子。

于 2010-08-29T03:55:24.127 回答
4

Joshua Bloch 的第 2 条:考虑构建器始终是一个不错的起点。关于 GUI 开发,许多布局管理器使用构建器模式。A Visual Guide to Layout Managers是一个很好的介绍。

于 2010-08-29T02:11:33.727 回答
3

我认为“ Source Making ”在介绍设计模式(以及 UML、反模式和重构)方面做得很好。您可能想查看该网站。

您可以在此处阅读有关 Builder 的信息:Source Making: Builder Design Pattern

于 2010-08-29T02:08:54.433 回答
2

这是与构建 UI 相关的良好 BuilderPattern 示例。(没有解释,但如果你知道 Builder Pattern,就很容易理解)

http://www.java2s.com/Code/Java/Design-Pattern/BuilderPatternExample.htm

建造者模式更多信息:

http://www.allapplabs.com/java_design_patterns/builder_pattern.htm

http://www.java2s.com/Code/Java/Design-Pattern/BuilderPatterninJava.htm

于 2010-08-29T08:51:05.543 回答