NO.16 ATM机系统

了解一下基本知识:

多态:

1)同一类型的引用,在指向不同的对象时,有不同的实现;同一个对象,被造型为不同的类型时,有不同的功能

2)向上造型----父类型的引用指向子类的对象,可以造型为父类和所实现的接口。能点出来什么,看引用的类型

3)强制类型转换----引用所指向的对象,就是该类型,或者所指向的对象实现了该接口。若不符合条件发生ClassCastException类型转换异常,建议强转之前先通过instanceof来判断引用所指向的对象是否是该类型


成员内部类:应用率不高

1)类中套类,外面的称为外部类Outer,里面的称为内部类Inner

2)内部类通常只服务于外部类,对外不具备可见性

3)内部类对象通常是在外部类中创建的

4)内部类中可以直接访问外部类的成员(包括私有的);内部类中有一个隐式的引用指向了创建它的外部类对象(eg: 外部类名.this)


匿名内部类:

1)若想创建一个类(子类)的对象,并且对象只被创建一次,此时该类可以不必命名,称为匿名内部类

2)匿名内部类中若想访问外部的变量,该变量必须是final的


下面做一下今天的案例:

要求在案例“ 银行卡系统(实现银联接口) ”基础上实现本案例,本案例要求实现中国农业银行的ATM系统,详细要求如下:

1) 中国农业银行的ATM机对所有银联卡提供检查密码功能、取款功能以及查询余额功能。

2)如果为农行的卡,可以实现支付电话费功能。

NO.16 ATM机系统_第1张图片
创建农行ATM实现插卡取卡
NO.16 ATM机系统_第2张图片
ATM插卡后可选择的功能

NO.16 ATM机系统_第3张图片
封装的方法集中在方法中提供功能
NO.16 ATM机系统_第4张图片
用户选择机制

程序实现:

NO.16 ATM机系统_第5张图片
ATM机流程

交互结果:

NO.16 ATM机系统_第6张图片
农行卡测试结果
NO.16 ATM机系统_第7张图片
工行卡测试结果


你可能感兴趣的:(NO.16 ATM机系统)