Java任务:建立面条仓库
来自CloudWiki
任务描述
我们在之前的实训中,已经建立了面条类Noodles,然而面馆生意光这一个类似乎还不完全够用,还需要什么呢 ?
在面馆管理系统中,需要有一个食品仓库存放面馆中具有的所有面品的信息,包括面条名称、面条库存量、面条价格。本任务完成创建面条仓库数据。
相关技术可以通过对象数组来完成。
任务实现
打开项目
启动Eclipse,打开Java 项目Noodles。(源码可参考上一章的实训)
创建面条仓库类
- 在工程中新建一个面条仓库的类,类名为Store
定义成员变量
- 定义私有对象数组nset ,用来保存仓库商品;定义私有变量num,用来表示仓库商品数量(即对象数组大小)。
<nowiki>在此插入非格式文本 private Noodles [] nset;
private int num;</nowiki>
编写构造方法
- 创建0参数构造方法,在构造方法中初始化成员变量。
- 构造方法是做什么用的还记得吗 ?它的主要作用是对类的成员变量进行初始化,这里是对对象数组和 num变量进行初始化
public Store() { num=3; nset = new Noodles[num]; nset[0]= new Noodles("山西刀削面",105.0f,30); nset[1]= new Noodles("兰州牛肉面",15.0f,20); nset[2]= new Noodles("北京炸酱面",12.0f,30); }
编写成员方法
getNum: 获取库存种类num
getSet:打印库存信息
public int getNum() { return this.num; } public void getSet() { for(int i=0;i<nset.length;i++) { System.out.println(nset[i].toString()); } }
还有其他的成员方法可以编写:
- findAll( ):查询所有商品的方法、
- findByName():按名称查询某一商品的方法
- toString():打印仓库库存信息的方法
创建仓库类的对象
在main方法中创建Store类的对象,完成类的实例化:
Store s = new Store(); System.out.println("仓库的商品总数为:"+s.getNum()); System.out.println("以下为商品详情信息:"); s.getSet();
完整代码
public class Store { private Noodles [] nset; private int num ; public Store() { num = 3; nset = new Noodles[num]; nset[0]= new Noodles("山西刀削面",105.0f,30); nset[1]= new Noodles("兰州牛肉面",15.0f,20); nset[2]= new Noodles("北京炸酱面",12.0f,30); } public int getNum() { return this.num; } public void getSet() { for(int i=0;i<nset.length;i++) { System.out.println(nset[i].toString()); } } /* public Noodles findByName(String name) { } */ /* public void findAll() { }*/ public String toString() { String total=""; for(int i=0;i<nset.length;i++) { total +=nset[i].toString()+"\n"; } return total; } public static void main(String[] args) { // TODO Auto-generated method stub Store s = new Store(); System.out.println("仓库的商品总数为:"+s.getNum()); System.out.println("以下为商品详情信息:"); s.getSet(); } }
。