一. 题目要求
java设计并实现MonetaryCoin类,声明变量保存硬币的值,添加方法返回硬币面值,随机抛若干硬币,计算所有正面朝上硬币面值的和。
二. 程序设计
- Coin类
基类,有抛硬币的方法在构造器中,生成硬币对象时产生正反面。 - MonetaryCoin类
声明变量保存硬币的值,添加方法返回硬币面值 - test类
该类为测试类,根据题目要求,随机生成若干硬币并抛出,计算朝上的面额之和。
三. 代码实现
1.Coin类
public class Coin {
private final int HEADS = 1;
private final int TAILS = 0;
public int face;
public Coin() {
flip();
}
//随机产生一个面值0、1中的一个
public void flip() {
face = (int) (Math.random() * 2);
}
public boolean isHeads() {
return (face == HEADS);
}
public String toSting() {
String faceName;
if (face == HEADS)
faceName = "Heads";
else
faceName = "Tails";
return faceName;
}
}
- Monetary类