面向对象银行管理系统JAVA代码_第1页
面向对象银行管理系统JAVA代码_第2页
面向对象银行管理系统JAVA代码_第3页
面向对象银行管理系统JAVA代码_第4页
面向对象银行管理系统JAVA代码_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象模拟银行管理系统(java):一般银行账户分为:借记卡账户和信用卡账户借记卡账户 DebitAccount :是指先存款后消费(或取现),没有透支功能的银行卡。 即存储卡账户,余额必须大于0。 信用卡账户 CreditAccount :信用卡是一种非现金交易付款的方式, 是简单的信贷服务。在借记卡功能的基础上可以透支,但是有透支额度, 即透支只能在一定的金额范围内透支。 信用额度是指银行在批准你的信用卡的时候给于你信用卡的一个最高透支的限额, 你只能在这个额度内刷卡消费,超过了这个额度就无法正常刷卡消费本程序有五个类,一个账户父类,两个子类账户(借记,信用),一个Bank类,还有一个类

2、包含主方法详细程序代码及注释如下:package src.day01;public class ACC /父类 ,以下是共有属性和方法/卡号protected static long id; / 名字protected static String name; / 身份证protected static String personId; /电子邮件protected static String email; / 密码protected static long password; /余额protected static double balance; public ACC() public ACC

3、(long id,String name,String personId,String email,long password,double balance )this.id = id; = name;this.personId = personId;this.email = email;this.password = password;this.balance = balance;/ 存款方法public static void deposit(double money) balance += money; System.out.println(存款成功,你存入的金额为:

4、+ money); public long getId() return id;public void setId(long id) this.id = id;public String getName() return name;public void setName(String name) = name;public String getPersonId() return personId;public void setPersonId(String personId) this.personId = personId;public String getEmail()

5、 return email;public void setEmail(String email) this.email = email;public long getPassword() return password;public void setPassword(long password) this.password = password;public double getBalance() return balance;public void setBalance(double balance) this.balance = balance;package src.day01;impo

6、rt java.util.*;public class Bank /先定义两个动态数组,其中ban用来存储借记卡数据,ba用来存储信用卡数据static Vector ban = new Vector();static Vector ba = new Vector();/i指借记卡卡号,每增加一个用户,i自增1/j指借记卡卡号,每增加一个用户,j自增1 private static long i = ; private static long j = ;public Bank() /判断用户办理借记卡还是信用卡的相关业务public static void justy(int ch)boole

7、an k = true ;while(k) if(ch =1) System.out.println(你将要办理借记卡业务:); break;else if(ch =2) System.out.println(你将要办理信用卡业务:); break;else System.out.println(输入指令错误,请重新输入:); k=false;/开户方法 public static void register(int ch) justy(ch); Scanner re = new Scanner(System.in); System.out.println(请输入开户的用户名:); Strin

8、g na =re.next();long key; /两次密码不同的话循环 进行 p: while (true) System.out.println(请输入密码:); long pa = re.nextLong(); System.out.println(请再次输入密码:); long pa1 = re.nextLong(); if(pa=pa1 ) key = pa1; break ; else System.out.println(两次不相同,请重新输入); continue p; System.out.println(请输入身份证号:); String perId = re.next(

9、); System.out.println(请输入email地址:); String em = re.next(); System.out.println(请输入开户金额:); double bal = re.nextDouble(); /存储和输出过程,将以上输入的正确数据存储到相应的数组中 if(ch=1) DebitAcc De = new DebitAcc(i,na,perId,em,key,bal); ban.add(De); System.out.println(恭喜你开户成功:你的卡号为 + i); i+; else if(ch=2) CreditAcc Cr = new Cre

10、ditAcc(j,na,perId,em,key,bal); ba.add(Cr); System.out.println(恭喜你开户成功:你的卡号为 + j); j+; System.out.println( 用户名: + na ); System.out.println(身份证:+ perId ); System.out.println(email: +em ); System.out.println(开户金额: + bal ); /用户子菜单public static void MenuCu()Scanner sc = new Scanner(System.in);while(true)

11、System.out.println(欢迎使用银行系统);System.out.println(请输入指令:1、开户 2 、登陆 3、退出到上级);int choice = sc.nextInt(); switch(choice) case 1: openAccount(); break; case 2: logIn(); break; case 3: return; default: System .out .println(输入指令错误,请重新输入); break; /开户方法总方法private static void openAccount()System.out.println(你将

12、要办理开户业务:); System.out.println(请输入你要选择的银行卡类型: 1、借记卡 2、信用卡 ); Scanner op = new Scanner(System.in); int ch = op.nextInt(); register(ch); /用户登陆总方法public static void logIn( ) System.out.println(欢迎进入用户登陆界面,请选择你要登陆的卡号类型: 1、借记卡 2、 信用卡 ); boolean o = true; boolean p =false; Scanner lo = new Scanner(System.in

13、); int ch = lo.nextInt(); justy(ch); l:while(o) System.out.println(请输入你的卡号:); long user = lo. nextLong(); if(ch=1) /调用对应数组的卡号群与输入卡号匹配,以下同理 for(int i = 0;iBank.ban.size();i+) DebitAcc d = (DebitAcc)Bank.ban.get(i); if(user = d.id) System.out.println(请输入密码:); long password = lo.nextLong(); /对密码进行正误判断,

14、正则p为true,可向下进行,false则直接返回输入卡号命令,即只有输密码一次机会 p = pass(password) ; while(p) d.menu1(); break; else /卡号不存在进行的操作 System.out.println(该卡号不存在,是否重新输入:1、继续2、返回上一级); int c =lo.nextInt(); if(c=1) continue l; else return; else for(int j =0;jBank.ba.size();j+) CreditAcc c = (CreditAcc)Bank.ba.get(j); if(user=c.id

15、) System.out.println(请输入密码:); long password = lo.nextLong(); p = pass(password) ; while(p) c.menu1(); break; else System.out.println(该卡号不存在,请重新输入:); continue l; /密码正误判断方法public static boolean pass( long password)if(password !=DebitAcc.password)System.out.println(密码错误!重新输入:);return false;elsereturn t

16、rue;/管理员操作菜单public static void menuAd()Scanner mc = new Scanner(System.in);while(true)System.out.println(欢迎使用银行系统);System.out.println(请输入指令:1、查看所有用户余额 2 、查看信用卡用户总信用额度 3、退出到上级);int m =mc.nextInt();switch(m)case 1:checkBalance();break;case 2:checkCeiling();break;case 3:return;default:System.out.printl

17、n(输入错误,请重试:); break;/营业员查询总余额public static void checkBalance()double k =0.0;for(int i = 0;iBank.ban.size();i+)DebitAcc d = (DebitAcc)Bank.ban.get(i); k += d.balance; for(int j=0;jBank.ba.size();j+)CreditAcc c = (CreditAcc)Bank.ba.get(j); k+=c.balance;System.out.println(本银行账户的总余额为: + k);public static void checkCeiling()double k =0.0;for(int j=0;jbalance)System.out.println(你的余额已不足,是否透支?1.透支 2.不透支); Scanner cr = new Scanner (System.in); int c = cr.nextInt(); switch(c) case 1: if(ceiling + balance balance)System.out.println(你的余额已不足,无法透支,请你重新输入:);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论