首页 > 代码库 > 08JAVA多态

08JAVA多态

技术分享
//我并没有用多态,因为我也不知道怎么用多态实现ATM操作流程
/*
* 模拟ATM机 * 徐浩军 20153153 */ package 中转; import java.util.Scanner; public class ZhongZhuan { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请插卡,请输入密码:"); Scanner input=new Scanner(System.in); int mima1=input.nextInt(); ZhangHu xu=new ZhangHu("12345678901","xuhao","2016,10.11",123456,123); while(xu.judgemima(mima1)){ System.out.println("请输入您的选择:1.存款2.取款3.转账汇款4.修改密码5.查询余额"); int xuanze=input.nextInt(); if(xuanze==1){ xu.cunkuan(); } else if(xuanze==2){ xu.qukuan(); } else if(xuanze==3){ xu.zhuanzhang(); } else if(xuanze==4){ xu.xiugai(); } else if (xuanze==5){ xu.chaxun(); } } } } class ZhangHu{ String biaoshi;//十一个长度的字符和数字的组合 String name; String date; int mima; int yue; ZhangHu(String a,String b,String c,int d,int e){ biaoshi=a; name=b; date=c; mima=d; yue=e; } public void chaxun(){ System.out.println("当前余额为:"+yue); } public void xiugai(){ System.out.println("请输入新密码:"); Scanner input7=new Scanner(System.in); int mima3=input7.nextInt(); mima=mima3; System.out.println("修改成功"); } public boolean judgemima(int a){ if(a==mima){ return true; } else return false; } public void cunkuan(){ System.out.println("请输入你要存款的金额:"); Scanner input2=new Scanner(System.in); int jine=input2.nextInt(); yue+=jine; } public void qukuan(){ System.out.println("请输入选择:1.100元2.500元3.1000元4.1500元5.2000元6.5000元7.其他金额8.退卡"); Scanner input3=new Scanner(System.in); int xuanze1=input3.nextInt(); if(xuanze1==1){ if(yue<100){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=100; } } else if(xuanze1==2){ if(yue<500){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=500; } } else if(xuanze1==3){ if(yue<1000){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=1000; } } else if(xuanze1==4){ if(yue<1500){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=1500; } } else if(xuanze1==5){ if(yue<2000){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=2000; } } else if(xuanze1==6){ if(yue<5000){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=5000; } } else if(xuanze1==7){ System.out.println("请输入取款金额:"); Scanner input4=new Scanner(System.in); int jine2=input4.nextInt(); if(yue<jine2){ System.out.println("余额不足,无法取款"); } else{ System.out.println("取款成功"); yue-=jine2; } } else if(xuanze1==8){ System.out.println("退卡成功。"); } } public void zhuanzhang(){ Scanner input5=new Scanner(System. in); System.out.println("请输入卡号:"); String kahao=input5.next(); System.out.println("请输入转账金额:"); int zhuanzhangjine=input5.nextInt(); System.out.println("转账成功"); } }

 

二.验证类:

技术分享

技术分享

程序结果是:100,200,200,201。    

当把子类对象赋值给父类对象时,该对象的成员变量还是原来的,但是成员方法使用的是子类的,

我总结出的结论就是:在多态中,最重要的就是标签,什么意思呢,就是想要明白那些对象有哪些东西,就得知道,这些东西分别被打上了谁的标签,如果是

自己的标签,那么当然可以使用,如果是别人的标签,它也当然不可以使用。

这是我自己总结的。

 

08JAVA多态