帐户子类对象创建

时间:2014-04-25 04:03:53

标签: java instance subclass

所以我有一个关于如何在JAVA中创建子类实例的问题。是的,这是一个成绩的家庭作业,我已经完全实现了一个带有默认的主类和一个Account类的参数化构造函数。

我创建了两个子类,Savings和Checking。本书中关于作业的唯一规格是,支票账户不能超过透支限额,而且储蓄账户根本不能透支。

class Checking extends Account{
        double overdraftLimit = -100;

        public void withdraw(double w) {
            if (balance - w < overdraftLimit)
                    System.out.println("You can't overdraft more than $100.");
            else
                balance = balance - w;
        }    
    }

class Savings extends Account{
        double overdraftLimit = 0;

        public void withdraw (double w) {
            if (balance - w < overdraftLimit)
                    System.out.println("You don't have enough money, fool.");
            else
                balance = balance - w;
        }
    }

我的问题是我不确定如何创建特定子类的实例,SavingsChecking。有没有人对我有建议?在我的父类Account中,我已经有withdraw ( double w )的方法,例如balance -= w。我已经在每个子类中覆盖了withdraw方法。我的代码编译并运行,但在问题中,我被指示编写一个测试程序,该程序创建AccountSavingsChecking类型的对象并调用它们的toString()方法。我已经和我的导师谈过了这个问题在打印之前没有完全完成,因为没有关于Checking帐户允许的透支限制的说明。

也没有提到我应该调用的toString()方法,因此我正在跳过该部分的任务。

1 个答案:

答案 0 :(得分:0)

如果我正确理解你的问题(并且随意澄清),你需要为每个类创建一个构造函数:

public Checking(){
    super();
    //other initialization
}

public Savings(){
    super();
    //other initialization
}

并使用关键字main

从您的new拨打电话
Savings mySavings = new Savings();
Checking myChecking = new Checking();
Account myAccount = new Account();