Java 控制台简易银行管理系统示例

Ada
Ada
发布时间:2026-10-15 | 6人浏览过
原创

本文介绍如何使用 Java 语言实现一个基于控制台的简易银行管理系统。项目核心涵盖账户结构设计与用户交互流程,具体支持存款、取款和余额查询三大功能。通过分层的类设计(Bank 类管理数据,deal_service 类处理逻辑),结合 Scanner 获取用户输入与 do-while 循环维持交互状态,演示了基础的面向对象编程思想与业务流程实现。

系统设计分析

该简易系统主要包含两个核心类,采用简单的 MVC 分层思想:

  • bank 类:作为数据实体类,负责存储当前账户的余额(money)以及定义具体的业务操作方法,如存款(deposit)、取款(withdrawal)和查询(Inquire_money)。
  • deal_service 类:作为业务控制器,包含 main 方法。负责创建银行实例、接收用户输入(账号、金额、业务选择)、执行逻辑判断(如余额不足预警)并输出结果。

关键实现步骤

第1步:定义银行账户数据结构

目的:建立基础数据模型。

入口:创建 package Bank; 下的 bank.java 文件。

动作:
- 声明整型属性 int money; 用于记录余额。
- 实现 deposit(int money_a) 方法,将传入金额累加至余额。
- 实现 withdrawal(int money_b) 方法,从余额中扣除指定金额。
- 实现 Inquire_money() 方法,返回当前余额数值。

package Bank;

public class bank {
    int money;

    //存款
    public void deposit(int money_a){
        this.money+=money_a;
    }

    //取款
    public void withdrawal(int money_b){
        this.money-=money_b;
    }

    //查询---不需要返回值
    public int Inquire_money(){
        return money;
    }
}

第2步:实现业务交互逻辑

目的:处理用户输入并调用银行对象方法。

入口:创建 package Bank; 下的 deal_service.java 文件。

动作:
- 初始化 Scanner 用于读取控制台输入。
- 创建 bank 实例对象 sum。
- 使用 do...while 循环展示菜单(1:存款, 2:取款, 3:查询, 0:退出)。
- **存款逻辑**:接收金额后调用 sum.deposit(money)。
- **取款逻辑**:需先判断 money 是否大于当前查询余额减去 10(此处为原代码逻辑设定的门槛,实际应为大于等于或大于当前可用余额)。若余额不足则提示,否则调用 sum.withdrawal(money)。
- **查询逻辑**:直接调用 sum.Inquire_money() 打印结果。

package Bank;
import java.util.Scanner;
//处理业务

public class deal_service {
    public static void main(String[]args) {
    //创建实例化对象
    
        bank sum = new bank();
        int moneys=sum.money;//调用对象属性money
      //键盘输入---用于后续输入用户账号和选择业务
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您的账号:");
        int use_name = sc.nextInt();//接受用户账号
        String[]str=new String[use_name];
        System.out.println("欢迎光临!"+use_name);
        //进入业务选择
        
        int pass_word=0;//记得业务选择的变量要先初始化
        do {
            System.out.println("请输入您要办理的业务:");
            System.out.println("1:存款,2:取款,3:查询,0:退出");
            
            //接受用户选择的业务
             pass_word = sc.nextInt();
            if(pass_word==1){
                System.out.println("请输入你要存款的金额:");

				//接受要存放的金钱数
                int money=sc.nextInt();
                sum.deposit(money);//将money传入存款机
                System.out.println("存款成功!");
                System.out.println("----------");
                System.out.println();
            }
            else if(pass_word==2){
                System.out.println("请输入您要取款的金额数:");
                //接受取款金额
                int money=sc.nextInt();

				//注意这里需要将取款与当前用户剩余余额进行比较
                if(money>=sum.Inquire_money()-10){
                    System.out.println("您的余额不足!");
                }
                else{
                    sum.withdrawal(money);
                    System.out.println("取款成功!");
                    System.out.println("----------");
                }
            }
				//查询余额
				
            else if(pass_word==3){
                System.out.println("您当前余额剩余为"+(sum.Inquire_money()-10));
                System.out.println("----------");
            }
        } while (pass_word != 0);
        System.out.println("欢迎下次光临!");
    }
}

运行效果

编译并运行 deal_service 类后,控制台交互流程如下所示:

请输入您的账号:
123
欢迎光临!123
请输入您要办理的业务:
1:存款,2:取款,3:查询,0:退出
1
请输入你要存款的金额:
234
存款成功!
----------

请输入您要办理的业务:
1:存款,2:取款,3:查询,0:退出
3
您当前余额剩余为224
----------
请输入您要办理的业务:
1:存款,2:取款,3:查询,0:退出
2
请输入您要取款的金额数:
66666
您的余额不足!
请输入您要办理的业务:
1:存款,2:取款,3:查询,0:退出
0
欢迎下次光临!

注意事项

上述代码中的余额判断逻辑 if(money>=sum.Inquire_money()-10) 存在特定设定(预留10元额度),在实际生产环境中通常应严格比较取款金额与当前实时余额。此外,输入账号时使用了 new String[use_name] 分配数组长度,若输入非正整数可能导致异常,建议在实际开发中对输入数据进行合法性校验。

以上就是 Java 实现简单银行管理系统示例代码的详细内容,更多关于 Java 控制台程序设计方面的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表