收藏 分销(赏)

软件工程-银行储蓄管理系统源代码.docx

上传人:人****来 文档编号:10072990 上传时间:2025-04-20 格式:DOCX 页数:27 大小:19.58KB
下载 相关 举报
软件工程-银行储蓄管理系统源代码.docx_第1页
第1页 / 共27页
软件工程-银行储蓄管理系统源代码.docx_第2页
第2页 / 共27页
点击查看更多>>
资源描述
.word格式, package src.day01; public class ACC { 〃父类,以下是共有属性和方法 〃卡号 protected static long id; //名字 protected static String name; //身份证 protected static String personld; 〃电子邮件 protected static String email; //密码 protected static long password; //余额 protected static double balance; public ACC(){ } public ACC(long id,String name,String personId,String email,longpassword,double balance ){ this.id = id; .word格式, this.name = name; this.personld = personld; this.email = email; this.password = password; this.balance = balance; } //存款方法 public static void deposit(double money){ balance += money; System.out.println("存款成功,你存入的金额为:"+ money); } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { .word格式, return name; } public void setName(String name) {this.name = name; } public String getPersonId() {return personld; } public void setPersonId(String personld) {this.personld = personld; } public String getEmail() {return email; } public void setEmail(String email) {this.email = email; .word格式, 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; import java.util.*; .word格式, 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 = 110; private static long j = 610; public Bank(){ } //判断用户办理借记卡还是信用卡的相关业务 public static void justy(int ch){ boolean k = true ; while(k){ if(ch = = 1){ System.out.println("你将要办理借记卡业务:"); break; }else if(ch ==2){ System.out.println("你将要办理信用卡业务:"); ,^ .word格式, break; }else{ System.out.println("输入指令错误,请重新输入: ); k=false; } } } 〃开户方法 public static void register(int ch){ justy(ch); Scanner re = new Scanner(System.in); System.out.println("请输入开户的用户名:"); String na =re.next(); long key; 〃两次密码不同的话循环 进行 p:while (true){ System.out.println("请输入密码:"); long pa = re.nextLong(); System.out.println("请再次输入密码:"); long pal = re.nextLong(); if(pa = = pa1 ){ .word格式, key = pal; break ; }else{ System.out.println("两次不相同,请重新输入”); continue p; } } System.out.println("请输入身份证号:"); String perld = re.next(); 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); .word格式, i + +; }else if(ch = =2){ CreditAcc Cr = new CreditAcc(j,na,perId,em,key,bal); ba.add(Cr); System.out.println("恭喜你开户成功:你的 长号为"+ j); j + +; } System.out.println("用户名:"+ na ); System.out.println("身份证:"+ perld ); System.out.println("email:" +em ); System.out.println("开户金额:"+ bal ); //用户子菜单 .word格式, public static void MenuCu(){ Scanner sc = new Scanner(System.in); while(true){ 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; .word格式, } } 〃开户方法总方法 private static void openAccount(){ System.out.println("你将要办理开户业务:"); 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; .word格式, Scanner lo = new Scanner(System.in); int ch = lo.nextInt(); justy(ch); l:while(o) { System.out.println("请输入你的卡号:"); long user = lo. nextLong(); if(ch = = 1){ 〃调用对应数组的卡号群与输入卡号匹配,以下同理 for(int i = 0;i<Bank.ban.size();i++){ DebitAcc d = (DebitAcc)Bank.ban.get(i); if(user == d.id){ System.out.println("请输入密码:"); long password = lo.nextLong(); 〃对密码进行正误判断,正则p为true ,可向下进行, false则直接返回输入卡号命令,即只有输密码一次机会 p = pass(password); while(p){ d.menu1(); .word格式, break; } }else{ 〃卡号不存在进行的操作 System.out.println("该卡号不存在,是否重新输入: 1、继续2、返回上一级"); int c =lo.nextInt(); if(c= = 1){ continue l; }else{ return; } } } }else { for(int j =0;j<Bank.ba.size();j++){ CreditAcc c = (CreditAcc)Bank.ba.get(j); if(user==c.id){ System.out.println("请输入密码:"); long password = lo.nextLong(); p = pass(password); ,^ .word格式, while(p){ c.menu1(); break; } }else{ System.out.println("该卡号不存在,请重新输入: ); continue l; } } } } } //密码正误判断方法 public static boolean pass( long password){ if(password ! = DebitAcc.password){ System.out.println("密码错误!重新输入:"); .word格式, return false; }else{ return true; } } 〃管理员操作菜单 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: .word格式, return; default: System.out.println("输入错误,请重试:"); break; } } } 〃营业员查询总余额 public static void checkBalance(){ double k =0.0; for(int i = 0;i<Bank.ban.size();i + +){ DebitAcc d = (DebitAcc)Bank.ban.get(i); k += d.balance; } for(int j=0;j<Bank.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; .word格式, for(int j=0;j<Bank.ba.size();j + +){ CreditAcc c = (CreditAcc)Bank.ba.get(j); k+=c.ceiling; } System.out.println("本银行信用卡账户的总信用度为:"+ k); } 〃银行系统总菜单 public static void menuWel(){ Scanner b = new Scanner(System.in); while(true){ System.out.println("欢迎使用银行系统"); System.out.println("请输入指令:1、营业管理员2、普通用 户3、退出"); int ba =b.nextInt(); switch(ba){ case 1: menuAd(); break; case 2: MenuCu(); break; .word格式, case 3: System .out .println("感谢你的使用,欢迎下次光临”); System.exit(0); } } } } package src.day01; import java.util.*; public class CreditAcc extends ACC { //信用卡子类先定义信用额度为一常量 public double ceiling = 5.0; CreditAcc(){ super(); } CreditAcc(long id,String name,String personId,String email,longpassword,double balance){ super(id,name,personId,email,password,balance); .word格式, } 〃取款方法 public void withdraw(double money){ if(money>balance){ System.out.println("你的余额已不足,是否透支? 1. 透支2.不透支, Scanner cr = new Scanner (System.in); int c = cr.nextInt(); switch(c){ case 1: if(ceiling + balance<money){ System.out.println("信用度不足,无法透支,请重新 输入"); }else{ ceiling = (ceiling +balance)-money; balance = 0; } break; case 2: .word格式, break; default: System.out.println('臊作错误,请重新输入”); break; } } } 〃查询方法 public void show(){ System.out.println("姓名:"+name +" 卡号:"+ id); if(balance==0){ System.out.println("你的余额为 0,信用度为:"+ ceiling); }else{ System.out.println("你的余额为:"+ balance); } } //信用卡子菜单 public static void menu1(){ boolean b=true; .word格式, while(b){ System .out.println("请输入指令:1、取款2、存款3、查询4、 退出到上级, Scanner men = new Scanner(System.in); int m =men.nextInt(); switch(m){ case 1: System.out.println("请输入取款金额:"); double money = men.nextDouble(); DebitAcc.withdraw(money); break; case 2: System.out.println("请输入存款金额:"); double moneyl = men.nextDouble(); DebitAcc.deposit(moneyl); break; case 3: DebitAcc.show(); break; case 4: return; .word格式, } package src.day01; import java.util.Scanner; public class DebitAcc extends ACC { //借记卡子类 DebitAcc(){ super(); } .word格式, DebitAcc(long id,String name,String personId,String email,longpassword,double ancbalancee){ super (id,name,personId,email,password,ancbalancee); } //借记卡子菜单 public static void menu1(){ boolean b=true; while(b){ System .out.println("请输入指令:1、取款2、存款3、查询4、退出到上级, Scanner men = new Scanner(System.in); int m =men.nextInt(); switch(m){ case 1: System.out.println("请输入取款金额:"); double money = men.nextDouble(); DebitAcc.withdraw(money); .word格式, break; case 2: System.out.println("请输入存款金额:"); double moneyl = men.nextDouble(); DebitAcc.deposit(moneyl); break; case 3: DebitAcc.show(); break; case 4: return; } } } 〃取款方法,不可透支 public static void withdraw(double money){ if(money> balance){ System.out.println("你的余额已不足,无法透支,请 你重新输入:"); return; .word格式, } balance-=money; } 〃查询方法 public static void show(){ System.out.println("姓名:"+name +" 卡号:"+ id); System.out.println("你的余额为:"+ balance); } } package src.day01; public class Welbank { /** * @param args */ public static void main(String[] args) { 〃银行系统主方法 Bank bank = new Bank(); bank. menuWel(); .word格式,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服