不要自卑,去提升实力
互联网行业谁技术牛谁是爹
如果文章可以带给你能量,那是最好的事!请相信自己
加油o~

1、题目背景

银行账户类(Accoount)可以为账户存储交易。取款和存款都会产生交易信息。需要记录账户每次交易的信息,包括取钱还是存钱,交易的金额,交易时间和交易之后的余额。系统可以通过账户查询所有的交易次数(最多10次)。这里没有涉及用户的概念。

2、题目要求

为了实现此功能需要设计几个类?
这些类之间的关系是什么?请用UML图表示(注意单线关联和双向关联表示的不同)。
请写出你的设计的类的代码(先画UML图,图中标注主要数据域和方法,再展示代码)。
账户要包含用户名字、账户id,账户年利率,账户余额,账户所有的交易信息,账户创建的日期等信息(对实验六的Account类做部分修改)。
交易信息包含交易的时间,交易的类型(D表示取钱,W表示存钱),交易的数额、交易之后的余额。
编写一个测试程序,创建一个年利率为1.5%、收支额为1000、id为1122而名为George的Account。向账户存入30美元、40美元、50美元并从该账户中取出5美元、4美元、2美元。打印账户清单,显示账户持有者名字,利率,收支额和所有的交易。

以下代码仅供参考
以下代码仅供参考
以下代码仅供参考

最后的输出格式和编译器有关,不同编译器最终对齐方式可能有所不同,最终输出格式请自己修改。

/***作者:魏宝航*2020年11月23日,下午16:04*/
import java.util.Date;public class Test{public static void main(String[] args) {Account George=new Account(1122,1000,"George");Account.setAnnualInterestRate(150);System.out.println("Name:"+George.getName());System.out.println("Annual interest:"+George.getAnnual());George.deposit(30);George.deposit(40);George.deposit(50);George.withdraw(5);George.withdraw(4);George.withdraw(2);System.out.println("Balance:"+George.getBalance());System.out.println("Date\t\t\t\t"+"Type\t\t"+"Amount\t\t"+"Balance");for(int i=0;i<George.data.count;i++){System.out.println(George.data.string[i][0]);}}
}
class Account {private int id;private String name;private double balance;private static double annualInterestRate;//年利率Data data=new Data();private java.util.Date dateCreated;{dateCreated = new java.util.Date();}public Account() { }public Account(int newId, double newBalance,String name) {id = newId;balance = newBalance;this.name=name;}public int getId() { return this.id; }public double getBalance() { return balance; }public static double getAnnualInterestRate() { return annualInterestRate; }public void setId(int newId) { id = newId; }public void setBalance(double newBalance) {if(newBalance>0)balance = newBalance;}public static void setAnnualInterestRate(double newAnnualInterestRate) {annualInterestRate = newAnnualInterestRate;}public String getName(){return name;}public double getMonthlyInterest() { return balance * (annualInterestRate / 1200); }public double getYearlyInterest() { return balance * (annualInterestRate / 100); }public java.util.Date getDateCreated() { return dateCreated; }public void withdraw(double amount) {this.setBalance(balance-amount);String s;if(amount<10){s=dateCreated+"\t"+"W"+"\t\t"+amount+"\t\t"+balance;}else{s=dateCreated+"\t"+"W"+"\t\t"+amount+"\t\t"+balance;}data.string[data.count++][0]=s;}public void deposit(double amount) {if(amount<0) return;this.setBalance(balance+amount);String s=dateCreated+"\t"+"D"+"\t\t"+amount+"\t\t"+balance;data.string[data.count++][0]=s;}public double getAnnual(){return annualInterestRate/100;}
}
class Data{Date date=new Date();String type="";double amount=0;double balance=0;int count=0;String[][] string=new String[1000][1];Data(){}Data(Date date,String type,double amount,double balance){this.date=date;this.type=type;this.amount=amount;this.balance=balance;}
}

银行账户类(Accoount)可以为账户存储交易。取款和存款都会产生交易信息。需要记录账户每次交易的信息,包括取钱还是存钱,交易的金额,交易时间和交易之后的余额。系统可以通过账户查询所有的交易次数(最相关推荐

  1. Java银行开户,取钱,存钱,查询余额,退出。。。。。

    一:上码 package com.wyj.two;import java.util.Scanner;/*** 封装的练习*/ public class Demo8 {public static voi ...

  2. 使用Java编写银行账户类(面向对象思考实验)

    银行账户类(Accoount)可以为账户存储交易.取款和存款都会产生交易信息.需要记录账户每次交易(Transaction)的信息,包括取钱还是存钱,交易的金额,交易时间和交易之后的余额.系统可以通过 ...

  3. win0 计算机管理没有用户,Win10系统Administrator管理员账户不见了

    Win10系统Administrator管理员账户不见了怎么办?Win10系统Administrator管理员账户不见了还能登陆吗?有些Win10用户注销了当前用户,想以Administrator登录 ...

  4. 模拟银行ATM取钱存钱开户挂失等

    --创建表空间 create tablespace lsq datafile 'C:\Users\Administrator\Desktop\数据库项目\data.dbf' size 100M aut ...

  5. java存款输入密码类,创建一个银行账户类,包括账号、用户姓名、密码和余额属性,实现开户、查询余额、取款、存款功能。...

    用类与对象创建一个银行账户类.银行账户类包括账号.用户姓名.密码和余额属性,银行账户类的功能包括: 开户 查询余额 取款 存款 功能实现思路: 开户方法 Account(),创建账户的账号.密码.姓名 ...

  6. 创建一个银行账户的继承层次,表示银行的所有客户的账户。每个客户都能在他们的银行账户存钱,取钱。但是账户可以分为更具体的两种类型,例如,依靠存款生息的存储账户SavingsAccount类,另一种就是信

    不要自卑,去提升实力 互联网行业谁技术牛谁是爹 如果文章可以带给你能量,那是最好的事!请相信自己 加油o~ 创建一个银行账户的继承层次,表示银行的所有客户的账户.每个客户都能在他们的银行账户存钱,取钱 ...

  7. 创建一个银行账户的继承层次,表示银行的所有客户的账户。每个客户都能在他们的银行账户存钱,取钱。但是账户可以分为更具体的两种类型,例如,依靠存款生息的存储账户SavingsAccount类

    关联与继承练习题 题目: 源码: Account(账户)类: CheckingAccount(信用卡)类: SavingsAccount(借记卡)类: Person(用户)类: Transaction ...

  8. C++编程练习:设计一个银行账户类,包含户名、帐号以及当前余额属性,并且能完成开户、存款、取款和查询余额等行为。

    文章目录 例题 分析 代码 测试 结语 例题 设计一个银行账户(Account)类,包含户名.帐号以及当前余额属性,可完成开户.存款.取款和查询余额等行为.银行账户类的定义要求如下: class Ac ...

  9. account表里有什么 银行_模拟一个银行账户类Account,账户类中包括所有者、账号、余额、账户总数、存款、取款等信息。_学小易找答案...

    [单选题]廉价磁盘冗余阵列RAID利用冗余技术实现高可靠性,其中RAID1的磁盘利用率为() . [简答题]与直流调速相比,交流调速有何优点? [论述题]方法 [单选题]以<老子注>一书驰 ...

最新文章

  1. C#面向对象(一) 封装
  2. Java学习小程序(6)随机加法运算器
  3. MRI图像右心室分割
  4. Android绑定服务后出现空指针异常问题
  5. 训练代码_无需一行代码,完成模型训练和部署,这个AI工具开始公测
  6. python编程(最简单的rpc代码)
  7. Android 2.3 版本中链接边框问题解决
  8. windows2008系统缓存修改
  9. memcache的安装,配置和使用
  10. 虚拟机桥接模式下和windows相互ping通
  11. 联盛德 HLK-W806 (四): 软件SPI和硬件SPI驱动ST7735液晶LCD
  12. CUDA out of memory怎么解决
  13. strstr函数及模拟
  14. Python实现TOPSIS分析法(优劣解距离法)
  15. Ubuntu环境下制作Windows U盘启动工具
  16. linux移植嵌入式系统,嵌入式系统学习——S3C2451之Linux移植步骤
  17. 第一部文学理论和评论专著是谁的著作?全书分为几个部分?
  18. cct计算机一级百度云,CCT计算机等级考试一级(也就是计算机一级考试)
  19. 数据结构与算法(青岛大学-王卓老师)——学习笔记(第2周)
  20. seresnet50训练自己的数据集_SSD框架训练自己的数据集

热门文章

  1. JDK9-17新特性
  2. google 最新ndk android-ndk-r14b-windows-x86_64分享
  3. java程序设计教程实验报告_java程序设计课程实验报告3
  4. 变频调速器安装操作检测维护技术实训系统
  5. 最高等级 腾讯云TI平台获信通院产品能力4级认证
  6. LiveGBS国标GB/T28181国标视频平台报警消息查询配置报警订阅
  7. 上传应用程序到谷歌商店_将Google图书搜索集成到PHP应用程序中
  8. 91熊猫看书电脑版 v0.8.0|官方安装版下载
  9. 【安卓】Android播放器的三种实现方法
  10. am5718_基于TI AM5718 ARM 平台解决方案 --车牌识别系统