接口练习作业

作业要求
模拟银行存取款
1、 创建基接口BankAccount,包含
存款方法playIn(),
取款方法withdraw(),
查询余额方法getBalance()。
2、 创建接口ITransferBankAccount(继承基接口BankAccount)
包含转账方法transferTo().
3,创建类CurrentAccount
类中包含
私有数据成员:名字name和余额balance,
取款方法:withdraw(),
查询余额getBanlance(),
重载方法toString()方法,该方法返回银行当前账户中的余额。
4、 主函数中:拥有两个账户:分别为曹操和刘备,
(1):曹操存款1000,刘备存款2000。
(2):刘备向曹操转账1元钱,返回两个账户当前的余额。

interface bankaccout{//基类接口,包括存入,取出,查询方法
    public void playin(int a);  
    public void withdraw(int a);
    public int getbalance();
}


interface ITransferBankAccount extends bankaccout{//子类接口,增加了转账方法
    public void transferTo(CurrentAccount  name,CurrentAccount  name1,int num);

}
class  CurrentAccount  implements ITransferBankAccount{//创建账户类
    private String name;
    private  int balance;
    public CurrentAccount (String name,int balance){

        this.name=name;
        this.balance=balance;
    }
    @Override
    public void playin(int a) {//存入方法
        this.balance=this.balance+a;

    }
    @Override
    public void withdraw(int a) {//取出方法
        if(a>this.balance){
            System.out.println("余额不足");
        }
        else
        {
            this.balance=this.balance-a;
        }

    }
    @Override
    public int getbalance() {//查询方法

        return this.balance;
    }
    @Override
    public void transferTo(CurrentAccount  name,CurrentAccount  name1,int num) {
        name.withdraw(num);//转账人账户取出num
        name1.playin(num);//要转入的账户存入num

    }
    @Override
    public String toString() {
        return "帐户名 [name=" + name + ", balance=" + balance + "]";
    }



}
public class homework {

    public static void main(String[] args) {
        CurrentAccount t1=new CurrentAccount("caocao",1000);
        CurrentAccount t2=new CurrentAccount("liubei",2000);
        System.out.println("原账户");
        System.out.println(t1);
        System.out.println(t2);
        System.out.println("转账之后");

        t1.transferTo(t2, t1, 1);
        System.out.println(t1);
        System.out.println(t2);

}

运行结果

原账户
帐户名 [name=caocao, balance=1000]
帐户名 [name=liubei, balance=2000]
转账之后
帐户名 [name=caocao, balance=1001]
帐户名 [name=liubei, balance=1999]

猜你喜欢

转载自blog.csdn.net/qq_37232304/article/details/80445443
今日推荐