软件工程银行储蓄管理系统源代码.docx
- 文档编号:25469898
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:17
- 大小:17.53KB
软件工程银行储蓄管理系统源代码.docx
《软件工程银行储蓄管理系统源代码.docx》由会员分享,可在线阅读,更多相关《软件工程银行储蓄管理系统源代码.docx(17页珍藏版)》请在冰豆网上搜索。
软件工程银行储蓄管理系统源代码
packagesrc.day01;
publicclassACC{
//父类,以下是共有属性和方法
//卡号
protectedstaticlongid;
//名字
protectedstaticStringname;
//身份证
protectedstaticStringpersonId;
//电子邮件
protectedstaticStringemail;
//密码
protectedstaticlongpassword;
//余额
protectedstaticdoublebalance;
publicACC(){
}
publicACC(longid,Stringname,StringpersonId,Stringemail,longpassword,doublebalance){
this.id=id;
this.name=name;
this.personId=personId;
this.email=email;
this.password=password;
this.balance=balance;
}
//存款方法
publicstaticvoiddeposit(doublemoney){
balance+=money;
System.out.println("存款成功,你存入的金额为:
"+money);
}
publiclonggetId(){
returnid;
}
publicvoidsetId(longid){
this.id=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetPersonId(){
returnpersonId;
}
publicvoidsetPersonId(StringpersonId){
this.personId=personId;
}
publicStringgetEmail(){
returnemail;
}
publicvoidsetEmail(Stringemail){
this.email=email;
}
publiclonggetPassword(){
returnpassword;
}
publicvoidsetPassword(longpassword){
this.password=password;
}
publicdoublegetBalance(){
returnbalance;
}
publicvoidsetBalance(doublebalance){
this.balance=balance;
}
}
packagesrc.day01;
importjava.util.*;
publicclassBank{
//先定义两个动态数组,其中ban用来存储借记卡数据,ba用来存储信用卡数据
staticVectorban=newVector();
staticVectorba=newVector();
//i指借记卡卡号,每增加一个用户,i自增1
//j指借记卡卡号,每增加一个用户,j自增1
privatestaticlongi=110000000;
privatestaticlongj=610000000;
publicBank(){
}
//判断用户办理借记卡还是信用卡的相关业务
publicstaticvoidjusty(intch){
booleank=true;
while(k){
if(ch==1){
System.out.println("你将要办理借记卡业务:
");
break;
}elseif(ch==2){
System.out.println("你将要办理信用卡业务:
");
break;
}else{
System.out.println("输入指令错误,请重新输入:
");
k=false;
}
}
}
//开户方法
publicstaticvoidregister(intch){
justy(ch);
Scannerre=newScanner(System.in);
System.out.println("请输入开户的用户名:
");
Stringna=re.next();
longkey;
//两次密码不同的话循环进行
p:
while(true){
System.out.println("请输入密码:
");
longpa=re.nextLong();
System.out.println("请再次输入密码:
");
longpa1=re.nextLong();
if(pa==pa1){
key=pa1;
break;
}else{
System.out.println("两次不相同,请重新输入");
continuep;
}
}
System.out.println("请输入身份证号:
");
StringperId=re.next();
System.out.println("请输入email地址:
");
Stringem=re.next();
System.out.println("请输入开户金额:
");
doublebal=re.nextDouble();
//存储和输出过程,将以上输入的正确数据存储到相应的数组中
if(ch==1){DebitAccDe=newDebitAcc(i,na,perId,em,key,bal);
ban.add(De);
System.out.println("恭喜你开户成功:
你的卡号为"+i);
i++;
}elseif(ch==2){
CreditAccCr=newCreditAcc(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);
}
//用户子菜单
publicstaticvoidMenuCu(){
Scannersc=newScanner(System.in);
while(true){
System.out.println("欢迎使用银行系统");
System.out.println("请输入指令:
1、开户2、登陆3、退出到上级");
intchoice=sc.nextInt();
switch(choice){
case1:
openAccount();
break;
case2:
logIn();
break;
case3:
return;
default:
System.out.println("输入指令错误,请重新输入");
break;
}
}
}
//开户方法总方法
privatestaticvoidopenAccount(){
System.out.println("你将要办理开户业务:
");
System.out.println("请输入你要选择的银行卡类型:
1、借记卡2、信用卡");
Scannerop=newScanner(System.in);
intch=op.nextInt();
register(ch);
}
//用户登陆总方法
publicstaticvoidlogIn(){
System.out.println("欢迎进入用户登陆界面,请选择你要登陆的卡号类型:
1、借记卡2、信用卡");
booleano=true;
booleanp=false;
Scannerlo=newScanner(System.in);
intch=lo.nextInt();
justy(ch);
l:
while(o){
System.out.println("请输入你的卡号:
");
longuser=lo.nextLong();
if(ch==1){
//调用对应数组的卡号群与输入卡号匹配,以下同理
for(inti=0;i DebitAccd=(DebitAcc)Bank.ban.get(i); if(user==d.id){ System.out.println("请输入密码: "); longpassword=lo.nextLong(); //对密码进行正误判断,正则p为true,可向下进行,false则直接返回输入卡号命令,即只有输密码一次机会 p=pass(password); while(p){ d.menu1(); break; } }else{ //卡号不存在进行的操作 System.out.println("该卡号不存在,是否重新输入: 1、继续2、返回上一级"); intc=lo.nextInt(); if(c==1){ continuel; }else{ return; } } } }else{ for(intj=0;j CreditAccc=(CreditAcc)Bank.ba.get(j); if(user==c.id){ System.out.println("请输入密码: "); longpassword=lo.nextLong(); p=pass(password); while(p){ c.menu1(); break; } }else{ System.out.println("该卡号不存在,请重新输入: "); continuel; } } } } } //密码正误判断方法 publicstaticbooleanpass(longpassword){ if(password! =DebitAcc.password){ System.out.println("密码错误! 重新输入: "); returnfalse; }else{ returntrue; } } //管理员操作菜单 publicstaticvoidmenuAd(){ Scannermc=newScanner(System.in); while(true){ System.out.println("欢迎使用银行系统"); System.out.println("请输入指令: 1、查看所有用户余额2、查看信用卡用户总信用额度3、退出到上级"); intm=mc.nextInt(); switch(m){ case1: checkBalance(); break; case2: checkCeiling(); break; case3: return; default: System.out.println("输入错误,请重试: "); break; } } } //营业员查询总余额 publicstaticvoidcheckBalance(){ doublek=0.0; for(inti=0;i DebitAccd=(DebitAcc)Bank.ban.get(i); k+=d.balance; } for(intj=0;j CreditAccc=(CreditAcc)Bank.ba.get(j); k+=c.balance; } System.out.println("本银行账户的总余额为: "+k); } publicstaticvoidcheckCeiling(){ doublek=0.0; for(intj=0;j CreditAccc=(CreditAcc)Bank.ba.get(j); k+=c.ceiling; } System.out.println("本银行信用卡账户的总信用度为: "+k); } //银行系统总菜单 publicstaticvoidmenuWel(){ Scannerb=newScanner(System.in); while(true){ System.out.println("欢迎使用银行系统"); System.out.println("请输入指令: 1、营业管理员2、普通用户3、退出"); intba=b.nextInt(); switch(ba){ case1: menuAd(); break; case2: MenuCu(); break; case3: System.out.println("感谢你的使用,欢迎下次光临"); System.exit(0); } } } } packagesrc.day01; importjava.util.*; publicclassCreditAccextendsACC{ //信用卡子类先定义信用额度为一常量 publicdoubleceiling=500.0; CreditAcc(){ super(); } CreditAcc(longid,Stringname,StringpersonId,Stringemail,longpassword,doublebalance){ super(id,name,personId,email,password,balance); } //取款方法 publicvoidwithdraw(doublemoney){ if(money>balance){ System.out.println("你的余额已不足,是否透支? 1.透支2.不透支"); Scannercr=newScanner(System.in); intc=cr.nextInt(); switch(c){ case1: if(ceiling+balance System.out.println("信用度不足,无法透支,请重新输入"); }else{ ceiling=(ceiling+balance)-money; balance=0; } break; case2: break; default: System.out.println("操作错误,请重新输入"); break; } } } //查询方法 publicvoidshow(){ System.out.println("姓名: "+name+"卡号: "+id); if(balance==0){ System.out.println("你的余额为0,信用度为: "+ceiling); }else{ System.out.println("你的余额为: "+balance); } } //信用卡子菜单 publicstaticvoidmenu1(){ booleanb=true; while(b){ System.out.println("请输入指令: 1、取款2、存款3、查询4、退出到上级"); Scannermen=newScanner(System.in); intm=men.nextInt(); switch(m){ case1: System.out.println("请输入取款金额: "); doublemoney=men.nextDouble(); DebitAcc.withdraw(money); break; case2: System.out.println("请输入存款金额: "); doublemoney1=men.nextDouble(); DebitAcc.deposit(money1); break; case3: DebitAcc.show(); break; case4: return; } } } } packagesrc.day01; importjava.util.Scanner; publicclassDebitAccextendsACC{ //借记卡子类 DebitAcc(){ super(); } DebitAcc(longid,Stringname,StringpersonId,Stringemail,longpassword,doubleancbalancee){ super(id,name,personId,email,password,ancbalancee); } //借记卡子菜单 publicstaticvoidmenu1(){ booleanb=true; while(b){ System.out.println("请输入指令: 1、取款2、存款3、查询4、退出到上级"); Scannermen=newScanner(System.in); intm=men.nextInt(); switch(m){ case1: System.out.println("请输入取款金额: "); doublemoney=men.nextDouble(); DebitAcc.withdraw(money); break; case2: System.out.println("请输入存款金额: "); doublemoney1=men.nextDouble(); DebitAcc.deposit(money1); break; case3: DebitAcc.show(); break; case4: return; } } } //取款方法,不可透支 publicstaticvoidwithdraw(doublemoney){ if(money>balance){ System.out.println("你的余额已不足,无法透支,请你重新输入: "); return; } balance-=money; } //查询方法 publicstaticvoidshow(){ System.out.println("姓名: "+name+"卡号: "+id); System.out.println("你的余额为: "+balance); } } packagesrc.day01; publicclassWelbank{ /** *@paramargs */ publicstaticvoidmain(String[]args){ //银行系统主方法 Bankbank=newBank(); bank.menuWel(); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 银行 储蓄 管理 系统 源代码