0

0

Java初学者如何做简易银行账户系统_余额管理与交易记录模块

P粉602998670

P粉602998670

发布时间:2025-11-15 14:10:03

|

942人浏览过

|

来源于php中文网

原创

先设计BankAccount类封装余额和交易记录,再实现存取款及记录功能。1. 创建类包含balance和ArrayList类型的transactionHistory;2. 构造方法初始化余额为0并记录初始操作;3. deposit方法校验金额大于0后增加余额并记录存款信息;4. withdraw方法判断金额有效且不超过余额后扣款并记录取款信息;5. 添加showTransactionHistory方法遍历输出所有交易记录;6. getBalance方法返回当前余额;7. 在main方法中创建对象并测试多次存取款操作;8. 输出最终余额与完整交易日志验证逻辑正确性。通过基础语法实现完整业务流程,适合新手掌握面向对象核心概念。

java初学者如何做简易银行账户系统_余额管理与交易记录模块

Java初学者想做一个简易银行账户系统,重点在余额管理和交易记录模块,其实并不难。只要掌握类、对象、方法和集合的基本使用,就能实现一个功能清晰的小程序

设计账户类:封装核心属性与行为

先创建一个BankAccount类,用来表示一个银行账户。它应该包含账户余额和交易记录的存储。

余额用double类型保存,交易记录可以用ArrayList<String>来存每一笔操作的描述,比如“存款 +100.0”或“取款 -50.0”。

示例代码结构:

立即学习Java免费学习笔记(深入)”;

public class BankAccount {
    private double balance;
    private ArrayList<String> transactionHistory;

    public BankAccount() {
        this.balance = 0.0;
        this.transactionHistory = new ArrayList<>();
        recordTransaction("账户创建,初始余额 " + balance);
    }

    private void recordTransaction(String detail) {
        transactionHistory.add(detail);
    }
}

实现余额管理:存款与取款方法

为账户添加存款(deposit)和取款(withdraw)功能。这两个方法要更新余额,并把操作记入交易历史。

注意取款时判断余额是否足够,避免透支。

Cliclic AI
Cliclic AI

Cliclic商品背景图编辑器是一款功能强大的AI工具,帮助用户快速生成具有吸引力的商品图背景。

下载
public void deposit(double amount) {
    if (amount > 0) {
        balance += amount;
        recordTransaction("存款 +" + amount);
    } else {
        System.out.println("存款金额必须大于0");
    }
}

public void withdraw(double amount) {
    if (amount > 0 && amount <= balance) {
        balance -= amount;
        recordTransaction("取款 -" + amount);
    } else if (amount > balance) {
        System.out.println("余额不足,无法取款");
    } else {
        System.out.println("取款金额必须大于0");
    }
}

查看交易记录:提供查询接口

添加一个方法来打印所有交易记录,方便用户查看资金流向。

也可以加一个方法返回当前余额,供外部调用。

public void showTransactionHistory() {
    System.out.println("交易记录:");
    for (String record : transactionHistory) {
        System.out.println(record);
    }
}

public double getBalance() {
    return balance;
}

主程序测试:运行示例

main方法中创建账户对象,模拟几次操作。

public static void main(String[] args) {
    BankAccount account = new BankAccount();

    account.deposit(1000);
    account.withdraw(200);
    account.withdraw(150);
    account.deposit(500);

    System.out.println("当前余额:" + account.getBalance());
    account.showTransactionHistory();
}

运行后会看到余额变化和完整的交易列表,逻辑清晰,适合初学者理解面向对象编程的实际应用。

基本上就这些。不复杂但容易忽略细节,比如空指针或金额校验。多练习几次,再扩展功能如账户名、利息计算也不难。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1031

2023.08.02

if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

847

2023.08.22

go语言 面向对象
go语言 面向对象

本专题整合了go语言面向对象相关内容,阅读专题下面的文章了解更多详细内容。

58

2025.09.05

java面向对象
java面向对象

本专题整合了java面向对象相关内容,阅读专题下面的文章了解更多详细内容。

63

2025.11.27

c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

334

2025.08.29

C++中int、float和double的区别
C++中int、float和double的区别

本专题整合了c++中int和double的区别,阅读专题下面的文章了解更多详细内容。

108

2025.10.23

javascriptvoid(o)怎么解决
javascriptvoid(o)怎么解决

javascriptvoid(o)的解决办法:1、检查语法错误;2、确保正确的执行环境;3、检查其他代码的冲突;4、使用事件委托;5、使用其他绑定方式;6、检查外部资源等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

186

2023.11.23

java中void的含义
java中void的含义

本专题整合了Java中void的相关内容,阅读专题下面的文章了解更多详细内容。

134

2025.11.27

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

26

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 4.4万人学习

C# 教程
C# 教程

共94课时 | 11.3万人学习

Java 教程
Java 教程

共578课时 | 81.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号