⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 support.java

📁 <设计模式-Java语言中的应用> 的源码
💻 JAVA
字号:
public abstract class Support {
    private String name;                  // 问题解决者的名称
    private Support next;                 // 转送位置
    public Support(String name) {         // 产生问题解决者
        this.name = name;
    }
    public Support setNext(Support next) {  // 设定转送位置
        this.next = next;
        return next;
    }
    public final void support(Trouble trouble) {          
        for (Support obj = this; true; obj = obj.next) {
            if (obj.resolve(trouble)) {
                obj.done(trouble);
                break;
            } else if (obj.next == null) {
                obj.fail(trouble);
                break;
            }
        }
    }
    public String toString() {              // 打印字串
        return "[" + name + "]";
    }
    protected abstract boolean resolve(Trouble trouble); // 解决的方法
    protected void done(Trouble trouble) {  // 已解决
        System.out.println(trouble + " is resolved by " + this + ".");
    }
    protected void fail(Trouble trouble) {  // 尚未解决
        System.out.println(trouble + " cannot be resolved.");
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -