博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
开学第一周
阅读量:7070 次
发布时间:2019-06-28

本文共 9688 字,大约阅读时间需要 32 分钟。

       这周,是开学第一周。新学期新气象,第一节课,老师就给我们一个下马威。到现在还有点懵。第一次上机,第一次接触真正的程序,第一次真正的思考,编写程序。很多第一次没了,却也慢慢的从一个小白开始懵懂。

       在编写ATM机系统的时候,在定义类,声明变量,构造成员函数等过程中,或多或少都有问题。想了很久,感觉还是因为自己初次接触这种上课模式,初次接触这种程序,更多的也是因为暑假没有深入的学习,只知Java,却不知何为Java。只学到了Java的皮毛,打了很多程序。却没有真正思考过,没有真正的自己做过程序。以至于开始编写程序时一团乱麻。只是疯狂的在网上找寻答案,对于项目要求,格式什么都置若罔闻,最后在老师的提醒下,才慢慢的清醒过来。在老师的建议下,重新一遍遍的看着题目要求,一遍遍是思考着解答的方法。终于还是有了一些思路,终于会写了一点点。慢慢的,一点一点的磨出了很多,渐渐的掌握了一些技巧。编写代码的速度也渐渐的快了起来。终于,在下课前,基本写完了ATM机的代码。

       通过这节课的学习,深入学习到了java编程是什么意思,也第一次感觉到了程序和代码的区别。写了好久时间,感觉有上千行,包括给一个模块,每一个类。在写完之后都有单独运行,成功之后在做下一块。也第一次用到了分类这种思想。之前的程序都是一口气下下去,这次的程序是一块一块拼接起来的,和以往学习的编程有了一些出入,这一方面我也要加快适应。不过,最后做出来的只是一个程序的大概,好多细节还有待提升和改进。有了这一次的经验,以后的学习应该也会有很大的提升。在今后的学习中会多多运用这种分类的思想,分模块去思考,在整体组装,应该会使办事效率更高效。

        通过这次上课,领悟了很多之前没有接触过的新思想。也有了很多感悟,当然也发现了自身的很多不足,需要加以改正。时间还有,还有机会,可以更进一步。

代码如下:

package ATM;
package ATM;import java.util.Scanner;public class AccountManager {    private int d=0;    Account Ac;    public AccountManager() {    Ac=new Account();    }    Scanner scan=new Scanner(System.in);    public void login() {        //输入账号及其验证        char v='v';        int aaaaa=0;        while(v=='v'){    System.out.println("------------------------------------------------------------------------");    System.out.println("----------------------欢迎使用中国工商银行自动柜员系统--------------------");    System.out.println("------------------------------------------------------------------------");    System.out.println("请输入账号:");    System.out.println("-------------------------------------------------------------------------");            String pw = scan.next();                if(pw.length()!=8){                    System.out.println("该卡不是工行卡");                    aaaaa=1;                }                else{aaaaa=0;}                if(aaaaa==0)    {                if (Ac.getAccountID().equals(pw)) {                        Ac.setT(0);                        break;                    } else {                        System.out.println("账号错误");                         v='v';                    }                }    }        //输入密码及其验证    System.out.println("------------------------------------------------------------------------");    System.out.println("----------------------欢迎使用中国工商银行自动柜员系统--------------------");    System.out.println("------------------------------------------------------------------------");    System.out.println("请输入密码:");    System.out.println("------------------------------------------------------------------------");                String pw = scan.next();                while (Ac.getT() < 2) {                             if (Ac.getAccountpassword().equals(pw)&&pw.length()==6) {                        Ac.setT(0);                        break;                    } else {                        System.out.println("密码错误,请重新输入");                        Ac.setT(Ac.getT() + 1);                        pw = scan.next();                    }                }                if (Ac.getT() == 3) {                    System.out.println("该账号三次录入密码错误,该卡已被系统没收,请与工行及时联系处理");                    System.exit(0);                }                    }    public void serviceAll() {
//选择服务项目 System.out.println("****************************************************************"); System.out.println("\t\t欢迎XXXXXXXX(账户名称)使用中国工商银行自助柜员系统"); 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(" 0.退出 "); System.out.println("****************************************************************"); System.out.println("请选择:"); int i3=scan.nextInt(); switch(i3){ case 1:cunkuan();break; case 2:qukuan();break; case 3:zhuanzhang();break; case 4:gaimi();break; case 5:chaxun();break; } } public void cunkuan() {
//存款 char y='y'; while(y=='y'){ System.out.println("***************************************************************"); System.out.println("欢迎"+Ac.getAccountname()+"使用中国工商银行自助柜员系统:"); System.out.println("***************************************************************"); System.out.println("请输入存款金额:"); System.out.println("***************************************************************:"); double aa=scan.nextDouble(); int bb=(int)aa; if(bb==aa&&aa>0){ y='x'; Ac.setAccountbalance(bb); System.out.println("***************************************************************"); System.out.println("欢迎"+Ac.getAccountname()+"使用中国工商银行自助柜员系统:"); System.out.println("***************************************************************"); System.out.println("当前账户存款操作成功。"); System.out.println("当前账户余额为:"+Ac.getAccountbalance()+"元"); System.out.println("***************************************************************:"); } } serviceAll() ; } public void qukuan()//取款 { System.out.println("您的账户可用余额不够您的取款金额,请重新输入您的取款金额!"); System.out.print("请重新输入您的取款金额:"); Scanner scn2=new Scanner(System.in); System.out.println("恭喜您,取款成功!"); serviceAll(); } public void zhuanzhang(){ System.out.println("账户号:"); System.out.println("转账金额:"); serviceAll(); } public void gaimi(){ System.out.println("输入新的六位数密码:"); serviceAll(); } public void chaxun(){ System.out.println("当前余额:"+Ac.getAccountbalance()+"元"); serviceAll(); } public void huanying() {
//欢迎 System.out .println("------------------------------------------------------------------------"); System.out .println("----------------------欢迎使用中国工商银行自动柜员系统--------------------"); System.out .println("------------------------------------------------------------------------"); System.out.println(""); } public void tuichu() {
//退出 System.out .println("-----------------------------------------------------------"); System.out .println("------------------欢迎使用中国工商银行自动柜员系统!----------------"); System.out .println("-----------------------------------------------------------"); System.out.println(""); } }
package ATM;public class ATM {    public static void main(String[] args) {        AccountManager accou=new AccountManager();        accou.login();        accou.serviceAll();    }    }

 

public class Account {        String accountID;//用于存储学生的用户账号(由八位数字组成)        String accountname;//用于存储账户的名称。        String operatedate;//用于存储操作的时间,由十位字符组成        int operatetype;//用于存储操作账户的类型        String accountpassword;//用于用户密码        int accountbalance;//用于存储账户余额        int amount;//表示操作流水金额        int t=0;        public Account() {            accountID="20173581";            accountname="左家奇";                accountpassword="111111";            accountbalance=0;        }        public Account(String accountID, String accountname, String operatedate, int operatetype, String accountpassword,                int accountbalance, int amount) {            this.accountID = accountID;            this.accountname = accountname;            this.operatedate = operatedate;            this.operatetype = operatetype;            this.accountpassword = accountpassword;            this.accountbalance = accountbalance;            this.amount = amount;                    }                        public int getT() {            return t;        }        public void setT(int t) {            this.t = t;        }        public String getAccountID() {            return accountID;        }        public void setAccountID(String accountID) {            this.accountID = accountID;        }        public String getAccountname() {            return accountname;        }        public void setAccountname(String accountname) {            this.accountname = accountname;        }        public String getOperatedate() {            return operatedate;        }        public void setOperatedate(String operatedate) {            this.operatedate = operatedate;        }        public int getOperatetype() {            return operatetype;        }        public void setOperatetype(int operatetype) {            this.operatetype = operatetype;        }        public String getAccountpassword() {            return accountpassword;        }        public void setAccountpassword(String accountpassword) {            this.accountpassword = accountpassword;        }        public int getAccountbalance() {            return accountbalance;        }        public void setAccountbalance(int accountbalance) {            this.accountbalance = accountbalance;        }        public int getAmount() {            return amount;        }        public void setAmount(int amount) {            this.amount = amount;        }                    }

 

转载于:https://www.cnblogs.com/Excusezuo/p/9687992.html

你可能感兴趣的文章
<kubernetes in action>看书笔记
查看>>
python密码破解工具patator
查看>>
众筹网站Kickstarter不准备上市:转型公益企业
查看>>
OpenStack入门修炼之nova服务(计算节点)的部署与测试(11)
查看>>
ubuntu安装apache php mysql phpmyadmin
查看>>
漫画: DBA和小D的日常
查看>>
代码 实现UIDatePicker控件 和 Tab Bar 视图切换
查看>>
USB引导盘制作
查看>>
通过自己的项目实际经验,阐述为什么“恶心玩技术”?玩Java技术的教训(一)...
查看>>
蚂蚁分类信息系统 5.8 地区增加多级分类
查看>>
Spring-web源码解析之ContextLoaderListener
查看>>
设计模式--六大原则
查看>>
MONyog监控系统
查看>>
后缀数组 --- HDU 3518 Boring counting
查看>>
让你的虚拟机飞起来--VMware workstaion
查看>>
Yeslab 马老师 V2V环境下vCenter Server Heartbeat v6.4实现vCenter5.0的双机备份
查看>>
一个Demo带你彻底掌握View的滑动冲突
查看>>
ZigBee TI ZStack CC2530 1.1 总体框架
查看>>
Oracle 11g RAC ASM 错误之(1)
查看>>
LoadRunner针对Centos实施监控
查看>>