lockedstate.java

来自「《JAVA与模式》附书中源代码」· Java 代码 · 共 42 行

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

import java.util.Date;

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

    public void spell(WallEntry wall, String spell) throws WallEntryException
    {
        if (spell.equals(this.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;
    }

    private Date timeOfLock;
    protected static String rightSpell = "!@#$%^&*()";
}

⌨️ 快捷键说明

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