java大作业论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在线购物系统
大作业第一部分
实现:ShoppingCart类.ShoppingCart 是一个允许我们创建ShoppingCart对象的一个类。该对象将模拟一个虚拟的购物篮。ShoppingCart对象将会跟踪计算被购买商品的价格—换句话说,它将不断地计算被购买商品的价格,直到客户结帐。该类不涉及任何跟applet,按钮,及用户在屏幕上的点击操作等有关内容(这些问题将会在第二部分的Estore类中解决)。ShoppingCart.java只考虑到有关购物篮的一些概念。
代码如下:
import java.util.Stack;
public class ShoppingCart {
//常量
private static final float TAX = 0.07f;
private static final float SHIPPING = 2.00f;
private static final int CARTSIZE = 5;
//实例变量
private Stack cart;
private int count;
private float total;
private boolean checkedOut;
public ShoppingCart () {
/* 构造方法:
* 初始化购物篮的状态:购物总额(total)为0.00f,结帐状态(checkedOut)为false,购物总数(count)为0。*/
cart=new Stack();
this.total=0;
this.checkedOut=false;
this.count=0;
}
public boolean add(String item, float price) {
/*
*如果购物篮非空(例如:小于5件商品),就把该商品添加到购物篮并修改购物总额(total)*的值,然后返回true,否则返回false。 */
if (count {cart.add(item); this.total+=price; count++; return true; } else return false; } public boolean remove(String item, float price ) { /* *如果购物篮里有该商品,就删除该商品并修改购物总额(total)的值,然后返回true, *否则返回false。 */ if(cart.contains(item)) { cart.remove(item); this.total-=price; count--; return true; } else return false; } public void checkOut( ) { /* * 如果购物篮里的商品还没有被结帐,对其进行结帐,并修改购物总额的值:此处购物总额中要*包括GST和运输费(如果total<$100)。 */ if (this.checkedOut==false) { if (this.total>=100) { this.total=this.total+this.total*ShoppingCart.TAX; } else { this.total=this.total+this.total*ShoppingCart.TAX+ShoppingCart.SHIPPING; } this.checkedOut=true; } } public boolean isCheckedOut() { /* * 返回当前购物篮的结帐状态(true或false)。 */ return checkedOut; } public float getTotal( ) { /* * 返回购物总额,保留2位小数。 */ return Math.round(this.total*100)/100f; } public void reset() { /* *重新初始化该购物篮,以便于开始新一轮的购物。 */ this.total=0; this.checkedOut=false; this.count=0; } } 第一部分测试代码 /** * Test.java * 说明: 作业一第一部分测试代码。 */ public class Test { public static void main(String [] arg) { ShoppingCart cart = new ShoppingCart(); System.out.println(cart.getTotal()+" <> 0.0"); cart.add(“UofA CAP”,10); cart.remove(“UofA CAP”,10); System.out.println(cart.isCheckedOut()+" <> false"); System.out.println(cart.getTotal()+" <> 0.0"); cart.reset(); //...... //...... //为测试购物篮的各项功能,你可以多次调用ShoppingCart的各个方法。 } } 结果如下: 作业的第二部分 在第一部分,已经定义了 ShoppingCart类。在第二部分,将要编写另外一个类(Estore 类),在该类中将要创建一个小应用程序(Applet)。小应用程序Estore将要显示所有的图形用户部件。 代码如下: import java.awt.*; import java.applet.*; import java.awt.event.*; import java.util.Stack; /* * E-Store