• Java多态


    1.运行结果

    100,200,200,201

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

    3.(1)当子类与父类拥有一样的方法,并且让一个父类变量引用一个子类对象时,到底调用哪个方法,由对象自己的“真实”类型所决定,这就是说:对象是子类型的,它就调用子类型的方法,是父类型的,它就调用父类型的方法。

       (2)如果子类与父类有相同的字段,则子类中的字段会代替或隐藏父类的字段,子类方法中访问的是子类中的字段(而不是父类中的字段)。如果子类方法确实想访问父类中被隐藏的同名字段,可以用super关键字来访问它。 如果子类被当作父类使用,则通过子类访问的字段是父类的!

    //用多态实现ATM

    package 课堂测验ATM;
    import java.util.Scanner;
    public class Zhongzhuan {
    public static void main(String[] args)
    {
    System.out.println("请插入银行卡 请输入密码:");
    Scanner input=new Scanner(System.in);
    int passward1=input.nextInt();
    ZhangHu zhen= new ZhangHu("20153158","cyz","2016.11.15" ,201533,10000);
    while(zhen.Judgenumber(passward1))
    {
    System.out.println("请输入您的选择:1.存款2.取款3.转账汇款4.修改密码5.查询余额");
    int choose1=input.nextInt();
    if(choose1==1)
    {
    zhen.SaveMoney();
    }
    else if(choose1==2)
    {
    zhen.WithdrawMoney();
    }
    else if(choose1==3)
    {
    zhen.Transfer();
    }
    else if(choose1==4)
    {
    zhen.xiugai();
    }
    else if(choose1==5)
    {
    zhen.CheckBalance();
    }
    }

    }
    }
    class ZhangHu extends Zhongzhuan{
    String account;
    String name;
    String date;
    int number;
    double balance;


    ZhangHu(String a,String b,String c,int d,int e){
    account=a;
    name=b;
    date=c;
    number=d;
    balance=e;
    }

    public void CheckBalance()
    {
    System.out.println("您的账户余额为:"+balance);
    }
    public void xiugai()
    {
    System.out.println("请输入新密码:");
    Scanner input7=new Scanner(System.in);
    int n=input7.nextInt();
    number=n;
    System.out.println("修改成功");

    }
    public boolean Judgenumber(int num)
    {
    if(num==number)
    {
    return true;
    }
    else
    return false;
    }
    public void SaveMoney()
    {
    System.out.println("请输入你的存款金额");
    Scanner input=new Scanner(System.in);
    int sm=input.nextInt();
    balance+=sm;
    System.out.println("余额:"+balance);
    }
    public void WithdrawMoney()
    {
    System.out.println("请输入你的取款金额: 1.100元 2.500元 3.1000元 4.1500元 5.2000元 6.5000元 7.其它金额 8.退卡");

    Scanner input=new Scanner(System.in);
    int choose=input.nextInt();
    if(choose==1){
    if(balance<100)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=100;
    System.out.println("余额:"+balance);
    }
    if(choose==2){
    if(balance<500)

    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=500;
    System.out.println("余额:"+balance);
    }
    if(choose==3){
    if(balance<1000)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=1000;
    System.out.println("余额:"+balance);
    }
    if(choose==4){
    if(balance<1500)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=1500;
    System.out.println("余额:"+balance);
    }
    if(choose==5){
    if(balance<2000)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=2000;
    System.out.println("余额:"+balance);
    }
    if(choose==6){
    if(balance<5000)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=5000;
    System.out.println("余额:"+balance);
    }
    if(choose==7){
    System.out.println("请输入取款金额");
    Scanner input3=new Scanner(System.in);
    int dm2=input.nextInt();
    if(balance<dm2)
    System.out.println("余额不足");
    else
    System.out.println("取款成功");
    balance-=100;
    System.out.println("余额:"+balance);
    }
    }
    public void Transfer()
    {
    System.out.println("请输入转账用户卡号");
    Scanner input=new Scanner(System.in);
    String accounts=input.next();
    System.out.println("请输入转账金额");
    int money=input.nextInt();
    System.out.println("转账成功");
    }
    }

  • 相关阅读:
    jQuery初学:find()方法及children方法的区别分析
    百万级访问网站前期的技术准备
    TCP/IP协议三次握手与四次握手流程解析
    TCP/IP详解学习笔记
    Dubbo框架入门介绍
    如何提高Web服务端并发效率的异步编程技术
    杂 -- 有关程序员
    关于高性能的那点事
    大型网站的灵魂- 性能
    分布式java应用
  • 原文地址:https://www.cnblogs.com/cyz123/p/6079353.html
Copyright © 2020-2023  润新知