**某包下第一个文件创建的图书类**
package dazuoye;
//图书类
public class book {
private int id; //图书编号
private String name; //图书名称
private double price; //图书单价
private int ku_cun; //库存数量
public book(){}
public book(int id,String name,double price,int ku_cun)
{this.name=name;this.id=id;this.price=price;this.ku_cun=ku_cun;}
public String getname (){return name;}
public void setname (String name){this.name=name;}
public int getid(){return id;}
public void setid (int id){this.id=id;}
public double getprice (){return price;}
public void setprice (double price){this.price=price;}
public int getku_cun (){return ku_cun; }
public void setku_cun (int ku_cun){this.ku_cun=ku_cun;}
}
**某包下第二个文件创建的订单中每一项的类**
package dazuoye;
//订单项类
public class OrderItem {
private book Book; //订单购买的是哪一本图书
private int number;//购买的数量
public OrderItem(){}
public OrderItem(book Book,int number)
{this.Book=Book;this.number=number;}
public book getBook(){return Book ;}
public void setBook (book Book){this.Book=Book;}
public int getnumber(){return number ;}
public void setnumber (int number){this.number=number;}
}
**某包下第三个文件创建的总下单类**
package dazuoye;
//订单类
public class Order {
private String OrderId ; //订单编号
private OrderItem items[]=new OrderItem[3]; //每买一本书都会产生一个对应的订单项
private double money; //订总额
public Order(){}//空构造
public Order(String OrderId)
{this.OrderId=OrderId ; }
public double getmoney()
{
for(int i=0;i<items.length;i++)
money+=items[i].getnumber()*items[i].getBook().getprice();
return money;}
public void setmoney (){this.money=money;}
public String getOrderId(){return OrderId;}
public void setOrderId (String OrderId)
{this.OrderId=OrderId;}
public OrderItem[] getitem(){return items;}
public void setitems (OrderItem ite,int i)
{items[i]=ite;}
}
**某包下第四个文件创建的主测试类**
package dazuoye;
//测试
import java.util.Scanner;
public class Text1 {
public static void main(String[] args){
book[] Books= new book[3];
printbook(Books);
Order order=buybook(Books);
printinfor(order);
}
private static void printbook(book[] Books)
{
Books[0]=new book(1,"java教程图书",10,20);
Books[1]=new book(2,"html教程图书",20,20);
Books[2]=new book(3,"python教程图书",30,20);
System.out.println("----------------------------------");
System.out.println("图书编号\t图书名称\t图书单价\t图书库存");
for(int i=0;i<Books.length;i++)
{
book b=Books[i];
System.out.println(b.getid()+"\t"+b.getname()+"\t"+b.getprice()+"\t"+b.getku_cun());
}
System.out.println("----------------------------------");
}
private static Order buybook(book[] Books)
{
Order order=new Order("001");
Scanner sc=new Scanner(System.in);
for(int i=0;i<Books.length;i++)
{
System.out.println("请输入图书编号");
int id=sc.nextInt();
System.out.println("请输入购买数量");
int num=sc.nextInt();
OrderItem item=new OrderItem(Books[id-1],num);
order.setitems(item,i);
}
return order;
}
private static void printinfor(Order order)
{
System.out.println("订单编号"+order.getOrderId());
System.out.println("图书名称\t图书单价\t图书数量");
OrderItem[] items=order.getitem();
for(int i=0;i<items.length;i++)
{
System.out.println(
items[i].getBook().getname()+"\t"
+items[i].getBook().getprice()+"\t"
+items[i].getnumber());
}
System.out.println("----------------------------------");
System.out.println("总金额"+order.getmoney());
}
}
**下单了三本书,每一本书都是一个订单项**