所以我有一个Java编程II类的作业,要求我创建一个名为Account的类,它要执行以下操作:
设计一个名为Account的类,该类包含:
数据成员:
帐户的一个名为id的类型为int的私有数据文件;
帐户的double named balance类型的专用数据字段;
double类型、名为annualInterestRate的私有数据字段,存储当前利率(假设所有帐户的利率相同);
名为dateCreated的Date类型的专用数据字段,用于存储创建帐户的日期;
方法创建默认帐户并将下列数据成员设置为0(零)的无参数构造函数:id、balance和AnnualInterestRate;
创建具有指定id和初始余额的帐户的构造函数;
id、balance和AnnualInterestRate的访问器和赋值器方法;
dateCreated的访问器方法
一个名为getMonthlyInterestRate()的方法,它返回月利率;
一个名为getMonthlyInterest()的方法,它返回每月利息;
一种名为“提取”的方法,从帐户中提取指定的金额;
一种名为存款的方法,将指定的金额存入帐户。
编写一个测试程序,创建一个帐户ID为1122、余额为20,000美元、年利率为4.5%的帐户对象。使用提取方法提取2,500美元,使用存款方法存款3,000美元,并打印余额、月息和创建此帐户的日期。
测试器应用程序已经给了我们的教授,我将在下面链接。所需要的只是创建Account类,我已经创建了它。所有的编译都是正确的,但是当我运行tester应用程序时,我得到的输出非常奇怪:
----jGRASP exec: java AccountTest
Current account values:
Account@208e2fb5
Current account values:
Account@208e2fb5
Current account values:
Account@208e2fb5
我现在不知所措,我不知道该做什么,也不知道从这里到哪里去。
测试程序:
public class AccountTest
{
public static void main(String [] args)
{
Account a = new Account(1122, 20000.00);
a.setAnnualInterestRate(4.5);
System.out.println("\nCurrent account values: \n" + a);
a.withdraw(2500.00);
System.out.println("\nCurrent account values: \n" + a);
a.deposit(3000.00);
System.out.println("\nCurrent account values: \n" + a);
}
}
我创建的帐户类别:
import java.util.Date;
public class Account
{
private int id;
private double balance;
private double annualInterestRate;
private Date date = new Date();
Account()
{
id = 0;
balance = 0.0;
annualInterestRate = 0.0;
}
Account(int newId, double bal)
{
id = newId;
balance = bal;
}
public void setId(int newId)
{
id = newId;
}
public void setBalance( double bal)
{
balance = bal;
}
public void setAnnualInterestRate(double annualRate)
{
annualInterestRate = annualRate;
}
public int getId()
{
return id;
}
public double getBalance()
{
return balance;
}
public double getAnnualInterestRate()
{
return annualInterestRate;
}
/*public void setDate(Date n)
{
dateCreated = n;
}*/
public java.util.Date getDate()
{
return date;
}
double getMonthlyInterestRate()
{
return annualInterestRate/12;
}
double withdraw(double amount)
{
return balance -= amount;
}
double deposit(double amount)
{
return balance += amount;
}
}
为我的格式提前道歉。
您正在打印对象的字符串表示,您不能期望Java自己知道您想要打印的内容。
我建议您在打印当前对象字段的详细信息/值的对象帐户中重写toString方法。
您可以在这里检查如何重写toString方法
如果只想打印一个值(例如
System.out.println("\nCurrent account interest rate :" + a.getAnnualInterestRate());
更新到您的评论。-:
@Override
public String toString() {
return String.format("Here is detail of my object name : %s value : %d",stringValue,doubleValue);
}
嗨,这是我正在做的课程上的一个问题。。。 > 程序打印“键入数字”,直到用户键入数字-1。当用户键入数字1时,程序打印“谢谢,稍后再见!”!“并结束 程序应该打印用户输入的数字的总和(不带数字-1) 程序应该打印用户键入的数字(没有数字-1) 程序应该打印用户键入的数字的平均值(没有数字-1)。 5.程序应该打印用户键入的偶数和奇数的数量(没有数字-1)。 我已经完成了1-4,但完全停留在5。我确
这个问题是由打字错误或无法再复制的问题引起的。虽然这里可能有类似的问题,但这个问题的解决方式不太可能对未来的读者有所帮助。 我已经一遍又一遍地写这个程序了,有人能告诉我我遗漏了什么吗,看起来这是个小错误,我没有抓住。 以下是我正在努力实现的目标: 设计一个名为Account的类,该类包含: 帐户名为id的私有int数据字段(默认值为0) 帐户名为balance的专用双精度数据字段(默认值为0) 名
我正在使用outlook Mail REST API(https://docs.microsoft.com/en-us/previous-versions/office/office-365-api/API/version-2.0/mail-rest-operations)编写一个守护程序应用程序来管理我的个人microsoft outlook帐户。为此,我必须生成适当的授权令牌,以便与API调用
我在Google Play Alpha上发布了我的应用程序。我通过在“选择测试方法”下选择“Closed Alpha testing”,通过电子邮件地址列表添加测试人员。所以说清楚一点,这不是这个问题的重复,因为我没有使用Google Groups。 目前,这是大约2个小时以来,我发布的应用程序到阿尔法轨道,没有任何改变。 如何在封闭的阿尔法轨道上测试app?
产出: 因此上传的文件自动具有两个权限:1。服务帐户是“所有者”2。我的主要帐户是“作家” 的确,我可以在web界面上看到文件,编辑文件,删除文件等,但是,由于服务帐户是所有者,文件是在服务帐户存储配额中计算的,所以这并不能解决我的问题,即我的备份应用程序仍然不能使用超过15GB的文件。 顺便说一句,在谷歌帮助转移文件所有权中,他们说“如果你是谷歌应用程序的用户,你不能将所有权转移给你域外的其他人
问题内容: 每次开设银行帐户,帐户ID都应加1,但是每次我尝试拉出ID时,我只会得到帐户ID为0,这是任何建议,因为我完全按照从书中学习的方式进行学习而且仍然没有更新。 帐户构造函数: 银行账户主程序: 问题答案: 您可以采用一种杂乱的方式构造BankAccount对象,其中是否分配ID取决于您使用的构造函数。如果您重写构造函数以便将它们链接在一起,而主要构造函数负责所有核心职责,而次要构造函数将