利用封装属性,输出账户显示信息,并且输出存款,取款金额!

package com.practice.tain01;

//账户类
public class Account {
    private String id;        //账户号码
    private int pwd;        //密码
    private  String name;    //姓名
    private String pId;        //省份证号码
    private String email;    //电子邮箱
    private double balance;    //账户余额
    
    
    //封装属性
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public int getPwd() {
        return pwd;
    }
    public void setPwd(int pwd) {
        this.pwd = pwd;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getpId() {
        return pId;
    }
    public void setpId(String pId) {
        this.pId = pId;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public double getBalance() {
        return balance;
    }
    public void setBalance(double balance) {
        this.balance = balance;
    }
    
    //无参构造
    public Account() {
        
    }
    
    //有参构造
    public Account(String id,int pwd,String name,String pId,String email,double balance) {
        this.balance=balance;
        this.name=name;
        this.id=id;
        this.pId=pId;
        this.pwd=pwd;
        this.email=email;
        
    }
    
    //显示方法
    public void show() {
        System.out.println("账户:"+this.id);
        System.out.println("姓名:"+this.name);
        System.out.println("身份证号码:"+this.pId);
        System.out.println("邮箱:"+this.email);
        System.out.println("余额:"+this.balance);
    }
    
    //存款方法
    public double deposit(double money) {
        if(money%100==0) {                //if判断,取款必须是整100
            balance=balance+money;   //存款加上余额
        }else {
            System.out.println("您的输入有误,请输入整100的金额!");
        }
        return balance;                    //返回余额
    }    
    
    //取款方法
    public void withdraw(double money) {
        if(balance<=0||money>balance) {        //判断余额是否为0,或者取款金额是否大于余额
            System.out.println("余额不足!");
        }else if(money%100==0) {                 //判断是否整100
            balance-=money;                          //余额减取款等于当前余额
            System.out.println("取款成功!");
            System.out.println("您的账户余额为:"+balance);        //打印当前余额
        }else {
            System.out.println("您的输入有误,请输入整100的金额!");
            System.out.println("您的账户余额为:"+balance);        //输入有误,输出当前余额
        }
    }
    
}

package com.practice.tain01;

import java.util.Scanner;

//测试类
public class Test {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        
        //实例化对象,并赋初始值
        Account a=new Account("62284",123456,"张三","41022119908203480","wasit@34.com",1000);
        a.show();             //调用显示方法
        System.out.println("请输入您要存入的金额:");
        int c=input.nextInt();
        System.out.println("您的账户可用余额为:"+a.deposit(c));    //调用存款方法,输出当前余额
        System.out.println("请输入您要取出的金额:");
        int q=input.nextInt();
        a.withdraw(q);                  //调用取款方法
    }
}
 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我无法直接为您提供代码,但我可以为您提供一些基本的思路和代码片段,以供参考。 首先,我们需要创建一个基类 Account,包含账户号码、账户类型、账户名、开户日期、账户余额属性和方法: ```c++ class Account { protected: int accountNumber; string accountType; string accountName; string openDate; double balance; public: Account(int accountNumber, string accountType, string accountName, string openDate, double balance); virtual ~Account(); virtual void deposit(double amount); virtual void withdraw(double amount); virtual void transfer(Account* dest, double amount); virtual double getBalance(); virtual void showInfo(); virtual void modifyAccount(string accountType, string accountName); virtual void closeAccount(); }; ``` 接着,我们需要创建两个子类 SavingAccount 和 CheckingAccount,分别继承自 Account 类: ```c++ class SavingAccount : public Account { public: SavingAccount(int accountNumber, string accountName, string openDate, double balance); ~SavingAccount(); }; class CheckingAccount : public Account { public: CheckingAccount(int accountNumber, string accountName, string openDate, double balance); ~CheckingAccount(); }; ``` 在子类中,我们可以根据需要重父类的虚函数,实现多态性。 例如,在 SavingAccount 中,我们可以重 deposit 函数,实现存款的操作: ```c++ void SavingAccount::deposit(double amount) { balance += amount; cout << "成功存款 " << amount << " 元,当前余额为 " << balance << " 元。" << endl; } ``` 接着,我们可以创建一个 AccountManager 类,用于管理所有的账户信息: ```c++ class AccountManager { private: vector<Account*> accounts; public: AccountManager(); ~AccountManager(); void addAccount(Account* account); void removeAccount(int accountNumber); Account* findAccountByNumber(int accountNumber); void deposit(int accountNumber, double amount); void withdraw(int accountNumber, double amount); void transfer(int srcAccountNumber, int destAccountNumber, double amount); void showAccountInfo(int accountNumber); void modifyAccountInfo(int accountNumber, string accountType, string accountName); void closeAccount(int accountNumber); }; ``` 在 AccountManager 中,我们可以添加账户、删除账户、查找账户、进行存款取款、转账等操作。同时,我们也可以提供良好的用户界面,优化用户的体验感。 最后,我们可以在 main 函数中创建一个 AccountManager 实例,并测试各种功能: ```c++ int main() { AccountManager manager; // 添加账户 Account* account1 = new SavingAccount(1001, "张三", "2020-01-01", 1000); manager.addAccount(account1); Account* account2 = new CheckingAccount(1002, "李四", "2020-01-01", 1000); manager.addAccount(account2); // 存款 manager.deposit(1001, 500); // 取款 manager.withdraw(1002, 200); // 转账 manager.transfer(1001, 1002, 300); // 查询余额 manager.showAccountInfo(1001); manager.showAccountInfo(1002); // 修改信息 manager.modifyAccountInfo(1001, "储蓄账户", "王五"); // 注销账户 manager.closeAccount(1002); return 0; } ``` 这只是一个简单的示例,您可以进一步扩展并完善系统的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值