在Objects for Expense类中创建,保存和编辑信息

时间:2015-09-09 17:49:49

标签: java object

我正在开设一个费用课程,但我对我所做的对象需要做什么感到困惑。我想我会让它变得比它想象的更复杂。

  

开发一个费用类,负责记录和更新单个项目,如煤气,书籍,食品等。数据字段将包括类别,描述,日期,数量等。要测试你的课程,你应该写一个简单驱动程序(带有main方法的Java类),它实例化至少两个开销对象,测试所有类的功能(即所有可用方法)。您可以使用常量来表示数据,而不是从键盘或外部文件输入。这应保留在您的驱动程序中。

这是一些UML - 我认为这个问题非常重要

Expense

- categories: String [0..5] (categories = {"Misc", "education", "food",...})

- catNum: int

+ Expense(catNum:int, desc: String, date: SimpleDateFormat, amt: double, repeat: boolean)

+ Expense(desc: String, date: SimpleDateFormat, amt: double, repeat: boolean)

我遇到的问题是:

  

“catNum是费用类别的索引。例如,如果是   费用是教育我

     

可以使用第一个重载的构造函数实例化一个对象:

     

或者,我可以为足球实例化一个Expense对象   我刚购买的门票

     

使用no-arg构造函数

     

book = new Expense(1,“textbook”,...

     

ticket = new Expense();

     

我在Main中创建了一个对象 - Expenses UserExpen = new Expenses(); 但我真的不知道如何处理它以完成上述任务。

我已经问过我的教授他们的意思,并且不会解释。

1 个答案:

答案 0 :(得分:0)

首先 - 听起来这是编程或相关课程的问题。虽然我们当然可以提供帮助并且可能指出您正确的方向,但通常会违反规则来简单地给出答案/解决方案。

话虽这么说,您也可能会要求您的教授就您对作业的具体问题给予指导。

就你所问的而言,听起来你已经创建了第二种情况(例如使用通用构造函数的没有信息的费用)。尝试使用它并创建类似于示例的第二个费用。说实话,我不确定你在问什么,问题非常广泛。

编辑 - 在回复您的评论时,以下是对所发生情况的快速解释。您可以使用Google Java构造函数或Java方法&参数并得到完整的解释。

基本上你拥有的代码,你正在创建一个变量(命名票证或书籍等)并将其分配给新创建的对象。格式与以下类似。

Expense book = new Expense(...);

这将创建一个名为" book"的变量,并为其赋予" Expense(...)"的值。在哪里" ..."是您分配给它的值。在您的具体示例中" book = new Expense(1," book name" ....)" 您正在创建一个新的Expense对象并传递参数" 1","书名"等

更新了新信息

所以我从你最近的编辑中看到你需要创建两件事 - 费用类和驱动程序类。由于我不觉得驾驶员程序真的是作业的重点,我想先澄清你的困惑。驱动程序类通常与实际类分开(在代码中,您在费用类中有一个main方法)。通常情况并非如此。请参阅下面的代码以获取示例。

public class ExpenseDriver {
    public static void main(String[] args) {
        //Your test code here
        Expenses book = new Expenses(...);
    }
}

现在您的问题已经表明了您要测试的内容,因此我将上面的示例包含在代码中。请注意" ..."将成为费用的硬编码值的示例。从这里开始,您只需要修改Expense类,以使其正常工作。

我确实有一个问题 - 问题表明你不需要从控制台读取输入,那你为什么这么做?这个问题比你做的要简单得多。