redgeneral.java

来自「Java程序设计课后练习题题目的相关练习答案」· Java 代码 · 共 29 行

JAVA
29
字号
package finalexam;
public class RedGeneral extends Chessman{
    public RedGeneral() {
        super(5,1,0);
    }
    public String getId(){
        return "帅";
    }
    public String toString(){
        return "帅,x=" + posX + ",y=" + posY;
    }
    public void moveTo(int x,int y) throws IllegalMoveException{
        //帅只能在9宫内,不能斜走
        if (x==posX && Math.abs(y-posY)!=1){
            throw new IllegalMoveException("竖走只能1步");
        }
        if (y==posY && Math.abs(x-posX)!=1){
            throw new IllegalMoveException("横走只能1步");
        }
        if (x!=posX && y!=posY){
            throw new IllegalMoveException("不能斜走");
        }
        if (x<4 || x>6 || y>3){
            throw new IllegalMoveException("帅只能在9宫内");
        }        
        super.moveTo(x,y);
    }    
}

⌨️ 快捷键说明

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