生成订单的跟踪号

时间:2014-05-06 18:38:31

标签: java

我有这个类将从我的主类中使用,并将创建类Sale的对象:

import acm.program.*;

public class Sale {
int size = 0; 
public int scode = 0 ; // sell code 
public String cname ; // client name 
public int cphone ; // client phone 
public String sdate ; // selling date 
public int cost ; // final cost 
public int aItems[] // sold product

public Sale (Item aItems[],String cname, String cphone, String sdate) {
     this.aItems = aItems ; 
     this.cname= cname;
     this.sphone= sphone;
     this.sdate= sdate;
     }

     public void setsItems(Items aItems) {
     this.aItems= aItems;
     }

     public void setCname (String name) {
     this.name= name;
     }

     public void setCphone(String cphone) {
     this.cphone= cphone;
     }

        public void setSDate(String sdate) {
            this.sdate= sdate;
         }

该项目说,在我的主要课程中,我必须有办法通过输入将在本课程中创建的销售的唯一ID号来审查任何销售。我的问题是我不知道如何设置我的课程,以便每次从我的主电话调用它时都会生成一个新的id号码,从1开始每次增加1。 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用static成员变量存储上次销售的ID号。静态成员是一个变量,它是类的一部分,而不是对象。此值可以按您的需要递增。

创建一个新方法来访问该变量,每次生成新ID时,该变量也会将变量递增1。

在您的main中,调用Sale.generateNewID()方法,然后将该新ID传递给Sale类的构造函数。

public class Sale {

     public static int idCount = 0;

     public static int generateNewID() {
        return ++idCount;
     }

     // this is a new member variable to store the id of the sale
     private int id; 

     // note: added id parameter to constructor
     public Sale (int theId, Item aItems[],String cname, String cphone, String sdate) {
        this.id = theId;
        // other constructor assignments that you had go here.
     }

     ... // rest of your code

}