新手提问,关于自己写的一个银行类

问题描述

自己学过C,现在转学JAVA,对于面向对象和JAVA的编程方式还不是很了解,下面是一个关于银行的小程序,不知道哪里错了,望高人指点感觉是类的实例化和排布有问题用CBC.BankAccounts[n-1]....之类的调用就不好使。。。谢谢高人~~~~importjava.io.*;classBank{StringBankName;//银行名称intBankNumber;//银行编号Account[]BankAccounts=newAccount[100];//银行账户数组Bank(Stringx,intn){BankName=x;BankNumber=n;}//银行类构造方法intCheckAccount(intn){if(BankAccounts[n-1].AccountNumber==0){System.out.println("账户不存在,请开户");return0;}elsereturn1;}//检查账户是否存在voidAccountDisplay(intn){System.out.println("帐号:"+BankNumber+BankAccounts[n-1].AccountNumber);System.out.println("帐户名:"+BankAccounts[n-1].Name);System.out.println("身份证:"+BankAccounts[n-1].ID);System.out.println("金额:"+BankAccounts[n-1].Deposit);}//显示账户信息voidTransferAccount(inti,intj,intm){if(CheckAccount(i)==1&&CheckAccount(j)==1)if(BankAccounts[i-1].Deposit>m){BankAccounts[i-1].Deposit-=m;BankAccounts[j-1].Deposit+=m;}elseSystem.out.println("余额不足!");}//转账方法}classAccount{//账户类StringName;//帐户名StringID;//证件号码intAccountNumber;//帐号StringPassword;//密码intDeposit;//存款voidCreatAccount(Stringx,Stringy,intn,Stringp,intm){Name=x;ID=y;AccountNumber=n;Password=p;Deposit=m;}//创建账户信息intDepositMoney(intn){Deposit=Deposit+n;returnDeposit;}//存款intDrawMoney(intn){Deposit=Deposit-n;returnDeposit;}//取款}publicclassMyBank{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));System.out.println("请输入银行名称:");StringBName=in.readLine();System.out.println("请输入银行编号:");intBNum=Integer.parseInt(in.readLine());System.out.println(BName+""+BNum);BankCBC=newBank(BName,BNum);ints1;do{System.out.println("*******************************");System.out.println("*"+CBC.BankName+"欢迎您的到来!*");System.out.println("*请输入操作序号:*");System.out.println("*1.创建账户*");System.out.println("*2.存款*");System.out.println("*3.取款*");System.out.println("*4.转账*");System.out.println("*5.退出*");System.out.println("*******************************");s1=Integer.parseInt(in.readLine());switch(s1){case1:{System.out.println("请输入帐号:");intANum=Integer.parseInt(in.readLine());System.out.println(ANum);System.out.println("请输入姓名:");StringAName=in.readLine();System.out.println(AName);System.out.println("请输入身份证号码:");StringAID=in.readLine();System.out.println(AID);System.out.println("请输入密码:");StringAPass=in.readLine();System.out.println(APass);System.out.println("请输入开户金额:");intAMoney=Integer.parseInt(in.readLine());System.out.println(AMoney);System.out.println("请输入储蓄方式:");StringAFangshi=in.readLine();System.out.println(AFangshi);CBC.BankAccounts[ANum-1].CreatAccount(AName,AID,ANum,APass,AMoney);//创建账户break;}case2:System.out.println("请输入您的帐号:");intANum1=Integer.parseInt(in.readLine());if(CBC.CheckAccount(ANum1)==1){System.out.println("请输入密码:");StringAPass1=in.readLine();if(CBC.BankAccounts[ANum1-1].equals(APass1)){System.out.println("请输入您的存款金额:");intAMoney1=System.in.read();CBC.BankAccounts[ANum1-1].DepositMoney(AMoney1);break;}else{System.out.println("密码错误!请重新输入:");break;}}elsebreak;case3:System.out.println("请输入您的帐号:");intANum2=Integer.parseInt(in.readLine());if(CBC.CheckAccount(ANum2)==1){System.out.println("请输入密码:");StringAPass1=in.readLine();if(CBC.BankAccounts[ANum2-1].equals(APass1)){System.out.println("请输入您的取款金额:");intAMoney2=System.in.read();if(CBC.BankAccounts[ANum2-1].Deposit<AMoney2){System.out.println("余额不足!请重新输入:");break;}CBC.BankAccounts[ANum2-1].DrawMoney(AMoney2);break;}else{System.out.println("密码错误!请重新输入:");break;}}elsebreak;case4:System.out.println("请输入转出账号:");intOutNum=Integer.parseInt(in.readLine());System.out.println("请输入转入账号:");intInNum=Integer.parseInt(in.readLine());System.out.println("请输入转账金额:");intTMoney=Integer.parseInt(in.readLine());if(CBC.CheckAccount(OutNum)==1&&CBC.CheckAccount(InNum)==1){CBC.TransferAccount(OutNum,InNum,TMoney);break;}elsebreak;case5:System.out.println(CBC.BankName+"欢迎您下次再来!");System.out.println("PoweredbySupper");System.out.println("交流讨论请EMAIL至psu0328@gmail.com");}}while(s1!=5);}}

解决方案

解决方案二:
将调用方法和错误代码贴上来才能有人给你看。

时间: 2024-09-15 02:44:37

新手提问,关于自己写的一个银行类的相关文章

新手提问,使用sql建立一个table

问题描述 新手提问,使用sql建立一个table 设置主键是一个自增1序列的编号,然后开始录入信息,如果录入错误,系统也会把序列自增1怎么处理?比如第一条是编号1,内容1,第二条是编号2,内容2.第三条我在输入内容是违反约束,再重新输入,结果就会出现编号4,内容3怎么办? 解决方案 没办法 自增列只会一直增加. 解决方案二: 取消主键:在列属性中,标识规范(是标识)选否: 打开表,把错误的序号改正确了: 设置主键:在列属性中,标识规范(是标识)选是: 解决方案三: 公司是一般不会把序列这种用来当

C++写的一个简单类模版 友元函数求最大最小值

问题描述 C++写的一个简单类模版 友元函数求最大最小值 如题 , 编译时总是说 [Error] ld returned 1 exit status (编译器dev c++) using namespace std; template <typename t> class CValue { t data[5]; public: CValue(); friend t Max(CValue <t> a); friend t Min(CValue <t> a); }; tem

关于注册安装问题我 我们写了一个管理类的程序 发布了一个安装程序.

问题描述 关于注册安装问题我 我们写了一个管理类的程序 发布了一个安装程序. 关于注册安装问题我 我们写了一个管理类的程序 发布了一个安装程序 刚开始是免费试用7天 但是如果你今天安装了 没到7天 你重新卸载了 再次安装 又有七天了 这个问题该怎么解决呢????. 解决方案 在程序运行的时候往文件系统或者注册表中某个角落写一个值.卸载程序不知道,再次安装,运行后你去判断下,发现有了,就不让用. 还有就是在线验证,将用户信息记录在服务器上.可以用手机短信验证. 解决方案二: 这个有一个就是你安装的

利用反射自己写的一个ModelHelper类

开发中 很多人都会使用BLL Model这种开发,我也是,虽然现在有很多的自动生成工具,能在几秒内生成cs的模板,但我个人还不是很喜欢,我还是喜欢自己一个一个去写,这样更能了解自己的代码. 不过手动编写的时候,最讨厌的就是GetModel这类方法了,把datarow的数据转换成一个Model,实在写的我头疼,因为很多代码基本上都是一样的,一直想用反射来写这样一个方法,以后只要调用一个方法就能完成Model的赋值,那样就方便了.今天又遇到此类代码了,一时火大,自己写了个方法,采用的反射的原理(从B

新手提问:每次写for循环就会出现问题

问题描述 比如:for(inti=0,i<100,i++){Console.WriteLine("111111");}在第一行这个位置就会报错,一个错误是在100前后缺少";"一个是在i<100处说已在此范围内定义了名为"i"的局部变量还有一个是只有assignment,call,increment,decrement,await,new对象的表达式可用作语句.请问这是怎么回事,以前没有出现过这样的问题 解决方案 解决方案二:语法错误

写的一个inter类模仿ruby整数的行为

我们知道ruby中对于整数的[],[]=,<<,>>操作是针对于二进制的值来运算的. 我现在写一个针对十进制数操作的类,拥有整数的所有方法,如下:   class InterEx def initialize(val=0) @val=val end def to_s @val.to_s end def [](idx) self.to_s[idx].to_i end def []=(idx,val) s=self.to_s s[idx] = val.to_s @val=s.to_i

前一阵时间写的一个PHP类了,不知道有没有用哦!(加说明)

<?/***********************************************************************************//*/                                                                               /*//*/                        Program: File System Class(FSC)                    

面向对象-如何用数组存放一个基类派生的多种派生类?

问题描述 如何用数组存放一个基类派生的多种派生类? 我写了一个基类,用其派生了多个派生类, 接着我生成一个基类数组,再在程序里按输入情况对应将每个数组成员变成派生类, 请问这样如何实现? 我试过 p[i]=new student; 但是说i不能是变量 解决方案 vector list 解决方案二: 为啥不用list,有封装好的方法 解决方案三: 用list vector等支持存放指针的数组 然后你存入基类类型指针 用多态方式处理 解决方案四: p[i]得是指针数组呦

新手提问大神,java源代码写好后该怎么用,打包成exe?还是有别的更好的方法

问题描述 新手提问大神,java源代码写好后该怎么用,打包成exe?还是有别的更好的方法 有开发经验的大神告诉我,java源代码写好后该怎么用,打包成exe?还是有别的更好的方法,有的提到了脚本之类的 解决方案 点进去看看,试着去用用http://jingyan.baidu.com/article/358570f6727bb7ce4724fc88.html 解决方案二: 点进去看看,试着去用用http://jingyan.baidu.com/article/358570f6727bb7ce472