外观模式(Facade)

外观模式的意图是为子系统提供一个接口,便于它的使用。
可以用来简化工具包(toolkits),只需少量代码,就能提供典型的无修饰用法的类库中的类,一个外观就是一个类,它包含的功能介于工具包与完整的应用程序之间,为工具包或子系统的类提供了简单的用法。
外观类可能全是静态方法,在UML中,这样的类成为utility(工具)。

package app.facade;

import java.awt.Font;

import javax.swing.JOptionPane;
import javax.swing.UIManager;
//javax.swing包含了JOptionPane,以便弹出一个标准框,如下代码会反复显示对话框,直到用户单击了Yes按钮
public class ShowOptionPane {
    public static void main(String[] args)
    {
        Font font=new Font("Dialog",Font.PLAIN,18);
        UIManager.put("Button.font", font);
        UIManager.put("Label.font", font);
        int option;
        do
        {
            option=JOptionPane.showConfirmDialog(null,"Had enough?","A Stubborn Dialog", JOptionPane.YES_NO_OPTION);
        }while(option==JOptionPane.NO_OPTION);
    }

}

运行结果:
外观模式(Facade)_第1张图片

你可能感兴趣的:(外观模式(Facade))