NO.16 ATM机系统
2017-07-17 本文已影响0人
smallnumber
了解一下基本知识:
多态:
1)同一类型的引用,在指向不同的对象时,有不同的实现;同一个对象,被造型为不同的类型时,有不同的功能
2)向上造型----父类型的引用指向子类的对象,可以造型为父类和所实现的接口。能点出来什么,看引用的类型
3)强制类型转换----引用所指向的对象,就是该类型,或者所指向的对象实现了该接口。若不符合条件发生ClassCastException类型转换异常,建议强转之前先通过instanceof来判断引用所指向的对象是否是该类型
成员内部类:应用率不高
1)类中套类,外面的称为外部类Outer,里面的称为内部类Inner
2)内部类通常只服务于外部类,对外不具备可见性
3)内部类对象通常是在外部类中创建的
4)内部类中可以直接访问外部类的成员(包括私有的);内部类中有一个隐式的引用指向了创建它的外部类对象(eg: 外部类名.this)
匿名内部类:
1)若想创建一个类(子类)的对象,并且对象只被创建一次,此时该类可以不必命名,称为匿名内部类
2)匿名内部类中若想访问外部的变量,该变量必须是final的
下面做一下今天的案例:
要求在案例“ 银行卡系统(实现银联接口) ”基础上实现本案例,本案例要求实现中国农业银行的ATM系统,详细要求如下:
1) 中国农业银行的ATM机对所有银联卡提供检查密码功能、取款功能以及查询余额功能。
2)如果为农行的卡,可以实现支付电话费功能。
创建农行ATM实现插卡取卡 ATM插卡后可选择的功能封装的方法集中在方法中提供功能 用户选择机制
程序实现:
ATM机流程交互结果:
农行卡测试结果 工行卡测试结果