您的位置:首页 > 其它

关于骰子游戏的随想

2014-09-29 08:35 169 查看
    在开始写一个程序时,首先要做的是需求分析。

     拿骰子游戏来说,现实生活中,人们玩骰子可能需要2个或2个以上骰子(在这应该想到可以定义一个骰子类Die)。骰子上应该有6面数字分别为1到6(在这应该想到面上的数字应为骰子的属性)。这个时候,我们就实现了现实生活中的实物与代码中的类相对应起来,也就是实现了抽象。

package deigame;//定义名为deigame包

import java.util.Random;

/**

 * 定义一个骰子类

 * @author Angela

 *

 */

public class Die {

    //定义一个faceValue属性
private int faceValue;

//定义roll方法给faceValue赋值
public void roll(){
faceValue=new Random().nextInt(6)+1;
}

//定义得到骰子面值方法
public int getFaceValue(){
return faceValue;

}

}

     骰子类的问题解决以后,还有一个问题,就是我们如何定义游戏的玩法,比如现实生活中我们玩两个骰子,取和,大于7就为赢,否则为输。这个时候我们就可以定义一个骰子游戏类(DieGame),在这个类里应该定义两个骰子属性,以及玩骰子的方法。

package deigame;

/**

 * 骰子游戏类

 * @author Angela

 *

 */

public class DiceGame {
//定义骰子类类型的属性

    private Die die1=new Die();

    private Die die2=new Die();

    

    /**

     * 定义玩骰子游戏的方法

     * @return

     */

    public boolean play(){

    die1.roll();

    die2.roll();

   

    int faceValue1=die1.getFaceValue();

    int faceValue2=die2.getFaceValue();

    int num=faceValue1+faceValue2;

    System.out.println(faceValue1);

    System.out.println(faceValue2);

    if(num>7){

    return true;

    }else{

    return false;

    }

    }

}

     最后,我们要使这个程序可以运行起来,应该用主函数main(),因此最后还应该写一个可以使程序运行起来的Run类,首先new一个对象其次调用方法即可。

package deigame;

/**

 * 

 * @author Angela

 *

 */

public class Run {

/**
* @param args
*/
public static void main(String[] args) {
DiceGame diceGame=new DiceGame();
boolean flag=diceGame.play();

if(flag==true){
System.out.println("你赢了");
}else{
System.out.println("你输了");
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  游戏 对象