第三次blog作业

   opp第二阶段总结blog

                                     20206119-王福印

前言:学习OOP课程的第三阶段已经结束了,较第二次阶段学习难度加大,学习的内容更多,但收获也更多,在此进行对于知识点,题量,难度的分析与个人看法。

设计ATM仿真系统,具体要求参见作业说明。 

输入格式:

每一行输入一次业务操作,可以输入多行,最终以字符#终止。具体每种业务操作输入格式如下:

  • 取款功能输入数据格式: 卡号 密码 ATM机编号 金额(由一个或多个空格分隔)
  • 查询余额功能输入数据格式: 卡号

输出格式:

①输入错误处理

  • 如果输入卡号不存在,则输出Sorry,this card does not exist.
  • 如果输入ATM机编号不存在,则输出Sorry,the ATM's id is wrong.
  • 如果输入银行卡密码错误,则输出Sorry,your password is wrong.
  • 如果输入取款金额大于账户余额,则输出Sorry,your account balance is insufficient.

②取款业务输出

输出共两行,格式分别为:

业务:取款 [用户姓名]在[银行名称]的[ATM编号]上取款¥[金额]

当前余额为¥[金额]

其中,[]说明括起来的部分为输出属性或变量,金额均保留两位小数。

③查询余额业务输出

业务:查询余额 ¥[金额]

金额保留两位小数。

输入样例1:

在这里给出一组输入。例如:

6222081502001312390 88888888 06 500.00
#
 

输出样例1:

在这里给出相应的输出。例如:

业务:取款 张无忌在中国工商银行的06号ATM机上取款¥500.00
当前余额为¥9500.00
 

输入样例2:

在这里给出一组输入。例如:

6217000010041315709  88888888 06 3500.00
#
 

输出样例2:

在这里给出相应的输出。例如:

业务:取款 杨过在中国工商银行的06号ATM机上取款¥3500.00
当前余额为¥6395.00
 

输入样例3:

在这里给出一组输入。例如:

6217000010041315715
#
 

输出样例3:

在这里给出相应的输出。例如:

业务:查询余额 ¥10000.00
 

输入样例4:

在这里给出一组输入。例如:

6222081502001312390 88888888 01 500.00
6222081502051320786 88888888 06 1200.00
6217000010041315715 88888888 02 1500.00
6217000010041315709  88888888 02 3500.00
6217000010041315715
#
 

输出样例4:

在这里给出相应的输出。例如:

业务:取款 张无忌在中国建设银行的01号ATM机上取款¥500.00
当前余额为¥9490.00
业务:取款 韦小宝在中国工商银行的06号ATM机上取款¥1200.00
当前余额为¥8800.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥1500.00
当前余额为¥8500.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥3500.00
当前余额为¥5000.00
业务:查询余额 ¥5000.00
 

输入样例5:

在这里给出一组输入。例如:

6640000010045442002 88888888 09 3000
6640000010045442002 88888888 06 8000
6640000010045442003 88888888 01 10000
6640000010045442002
#
 

输出样例5:

在这里给出相应的输出。例如:

业务:取款 张三丰在中国农业银行的09号ATM机上取款¥3000.00
当前余额为¥6880.00
业务:取款 张三丰在中国工商银行的06号ATM机上取款¥8000.00
当前余额为¥-1416.00
业务:取款 张三丰在中国建设银行的01号ATM机上取款¥10000.00
当前余额为¥-11916.00
业务:查询余额 ¥-11916.00
 
作者
段喜龙
单位
南昌航空大学
代码长度限制
22 KB
时间限制
400 ms
内存限制
64 MB
Java (javac)
 
 
 
 
 
 
 
 
 
689
    }
690
}
691
 
class DebitAccount extends Account {
692
    ArrayList<Card> debitcardlist=new ArrayList<Card>();
693
 
    public DebitAccount() {
694
        super();
695
        // TODO Auto-generated constructor stub
696
    }
697
698
 
    public DebitAccount(String accountNO, double balance, User user, Bank bank,String accounttype) {
699
700
        // TODO Auto-generated constructor stub
701
        this.accountNO = accountNO;
702
        this.balance = balance;
703
        this.user = user;
704
        this.bank = bank;
705
        this.accounttype=accounttype;
706
    }
707
708
}
709
 
class CreditAccount extends Account {
710
    ArrayList<Card> crebitcardlist=new ArrayList<Card>();
711
 
    public CreditAccount() {
712
        super();
713
        // TODO Auto-generated constructor stub
714
    }
715
716
 
    public CreditAccount(String accountNO, double balance, User user, Bank bank,String accounttype) {
717
        super();
718
        // TODO Auto-generated constructor stub
719
        this.accountNO = accountNO;
720
        this.balance = balance;
721
        this.user = user;
722
        this.bank = bank;
723
        this.accounttype=accounttype;
724
    }
725
726
727
}
 

 

第三阶段Blog总结

  第三阶段通过三次题目集也落下帷幕,第一次阶段总结的最高潮是类设计,而本次的三次题目集基本所有的题目都以类设计为基础,完成题目的构建。在类设计的基础上,通过对继承,多态,接口等多方面学习,认识到类设计不是单一的去设计一个方法完成功能。面向对象编程的思想,也在本次学习真正拉开了序幕。面向对象编程不同于面向过程编程,在创立一个对象后便有明确的功能性,通过继承,多态,接口可以实现不同对象实现不同的功能。其中在类设计上,通过学习类属性的访问权限,初步了解了四种访问权限:public,private,protected,default;以及不同类的类型:实体类,业务类,接口类;对于类设计上,学习的多,代表思路与编程思想变得更为开阔且严谨,开始真正考虑到如何将一个题目设计到恰如其分,其中日期的聚合题目让我深入的感受到,不同的设计思路带来的不同效果。

  对于技能上的学习,在对字符串的校验处理上,通过对正则表达式的深入学习,掌握对复杂数据的校验,截取,替换等,作为一项工具使用,在程序复杂度上大大降低。以及对于list的学习,可以对多对象处理上更为便捷可观,多对象处理上更为有效。还有对于hashmap的学习,对于其中遍历的运用进行了学习,对于多字符校验上有了更广阔的思路。不仅于此,题目集中许多边边角角运用的技能,也是会通过学习得以利用。

  对于课程的学习建议,个人认为目前的pta便是不错的,有难有易,好上手,若想拿满分则必须要去自我学习。自我学习上,课程自带的SPOC课程则是选择之一,我们仍可自己去选择去论坛学习或者其他网课上学习。在实验上,目前进行的农夫过河的迭代性编程,面对同一个问题随着技术加深,我们需要运用更为上层的知识解决同一个问题,这是有趣也充满挑战的。线下课程中,希望老师不仅可以有对知识的讲解,与编程思想的演练,更可以对pta或者实验的难题加以点评与讲解,让作业不会得过且过,而是让我们更为深刻的了解一道题目应该如何去设计。作为学生自身,已经了解到这是一门需要自我探究,自我学习的课程。时间,精力,投入,缺一不可,不去假大空,而是去真正的做。

  第三阶段于此就告一段落了,首先感谢OOP课程的老师与助教的付出,再而感谢还在学习的自己。希望有更好的心态迎接第四阶段!

 

posted @ 2021-06-20 21:22  鲨鱼小辣椒  阅读(157)  评论(0)    收藏  举报