java实现银行管理系统

本文详细介绍了如何使用Java编程语言实现一个银行管理系统。通过设计和实现账户管理、存款、取款、转账等功能,深入理解Java面向对象编程的应用。文中还将讨论到异常处理和数据库交互等关键知识点。
摘要由CSDN通过智能技术生成


Bank类

package First;

import java.util.TreeSet;

//银行类
public class Bank {
        private String Bankname = "坑对对银行";                    //银行名称
        TreeSet<User> holder = null;                           //银行存储的信息
        private static Bank INSTANCE = new Bank();
        private Bank() {}                                      //私有化银行类
        public static Bank getInstance() {
                // TODO Auto-generated method stub
                return INSTANCE;
        }
        //存款功能
        public void saveMoney(User user,double money) {
                //初始金额与存入金额相加
                double sum = user.getSum()+money;
                user.setSum(sum);
                System.out.print(money+"存款成功!!!"+",当前余额是:"+user.getSum());
                System.out.print("\n");
        }
        //取款功能
        public void drawMoney(User user,double money,String pw) {
                if(user.getPw().equals(pw)) {                                        //先判断取款密码
                        if(user.getSum()>=money) {                                        //判断余额
                                user.setSum(user.getSum()-money);
                                System.out.print("取款成功");
                                System.out.print("\n");
                                System.out.print("当前余额为:"+"\t"+user.getSum());
                                System.out.print("\n");
                        }else {
                                System.out.print("抱歉余额不足!!!  当前余额:"+user.getSum());
                                System.out.print("\n");
                        }
                }
        }
        //查看余额以及信息
        public void looksum(User user) {
                 System.out.print("姓名:"+user.getName()+",账号:"+user.getAccount()+",余额:"+user.getSum());
                 System.out.print("\n");
        }
        //欢迎语句
        public void welcom(User user) {
                if(user.getSexual().equals("男")) {
                        System.out.print(user.getName()+"  先生!!"+"  "+(this.Bankname)+"  欢迎您!!!");
                        System.out.print("\n");
                }else if(user.getSexual().equals("女")){
                        System.out.print(user.getName()+"  女士!!"+"  "+(this.Bankname)+"  欢迎您!!!");
                        System.out.print("\n");
                }
        }
        //再见语句
        public void GoodBye(User user) {
                if(user.getSexual().equals("男")) {
                        System.out.print(user.getName()+"  先生!!"+"  "+(this.Bankname)+"  祝您生活愉快!!!");
                        System.out.print("\n");
                }else if(user.getSexual().equals("女")){
                        System.out.print(user.getName()+"  女士!!"+"  "+(this.Bankname)+"  祝您生活愉快!!!");
                        System.out.print("\n");
                }
        }
        
}


Data:数据存储类

package First;

import java.util.TreeSet;
//模拟一个数据库
//银行的数据库
public class Data {
        TreeSet<User> holder = new TreeSet<User>(new MyComparator());                //用于存储用户信息的容器---自定义比较规则
        File file = File.getFile();                                                                                        //获取一个文件类
        private static Data data = new Data();                                                    
        //单例模式--因为存储数据的类唯一.所以不能随意被实例化
        private Data() {}                                                                                                        //私有化构造方法
        public static Data getData() {                                                                           //提供返回该对象的静态方法
                return data; 
        }
        //添加用户
        public void addUser(User user) {
                holder.add(user);
                System.out.print("注册成功!!");
                System.out.print("\n");
        }
        //删除用户
        public void removeUser(User user) {
                if(holder.contains(user)) {                                                                                //如果容器中包含所user对象,则移除对象
                        holder.remove(user);        
                }else {                                                                                                                        //如果不包含则打印语句
                        System.out.print("抱歉请检查输入的信息是否正确");
                        System.out.print("\n");
                }
        }
        //获取容器
        public TreeSet<User> getHolder() {
                return holder;
        }
        //写入容器
        public void setHolder(TreeSet<User> holder) {
                this.holder = holder;
        }
        
}


FIie:文件IO类

package First;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.Iterator;
import java.util.TreeSet;

/*
* 文件类--负责向内存中初始化信息以及程序结束后向内存中存入信息
* */
public class File {
        TreeSet<User> holder = Data.getData().getHolder();                                //从Data数据库中获取容器
        //文件类只供使用不能被任意实际化
        public static File FILE;                                                                                //私有化一个File类
        private File() {};                        
        public static File getFile() {                                                                        //对外界提供获取方法
                return FILE;
        }
        //保存到文件里
    public static void SaveToFile(TreeSet<User> list) {                                //将获取到的容器存入到文件中----序列化
            ObjectOutputStream oo = null;
        try {
            oo = new ObjectOutputStream(new FileOutputStream(".\\src\\Test\\text1.txt"));                //获取文件存储地址
            oo.writeObject(list);                                                                                                                                //将容器写入
        } catch (Exception ex) {
            ex.printStackTrace();
        }finally {
                try {
                        oo.close();                                                                                                                                                //将流关闭
                }catch(IOException e) {
                        e.printStackTrace();
                }
        }
    }
    //从文件里读取
        public static TreeSet<User> ReadFromFile() {
                ObjectInputStream ois = null;
                TreeSet<User> list = null;
        try {<

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值