lockedstate.java

来自「《Java与模式》一书的源代码」· Java 代码 · 共 44 行

JAVA
44
字号
package com.javapatterns.state.taoist;

import java.util.Date;

public class LockedState implements WallStateIF
{
    //correction
    protected static String rightSpell = "!@#$%^&*()";
    private Date timeOfLock;

    public LockedState()
    {
        this.setTimeOfLock(new Date());
    }

    //correction
    public void spell(WallEntry wall, String aSpell) throws WallEntryException
    {
        if (aSpell.equals(LockedState.rightSpell))
        {
            wall.setState(new UnlockedState());
        }
        else
        {
            throw new WallEntryException("Wrong spell!!!");
        }
    }

    public void pass(WallEntry wall) throws WallEntryException
    {
        throw new WallEntryException("Bang!!!");
    }

    public Date getTimeOfLock()
    {
        return timeOfLock;
    }

    public void setTimeOfLock(Date timeOfLock)
    {
        this.timeOfLock = timeOfLock;
    }
}

⌨️ 快捷键说明

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