IE盒子

搜索
查看: 124|回复: 5

Java语言-课程设计-ATM柜员机模拟程序

[复制链接]

4

主题

5

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2023-3-5 02:55:46 | 显示全部楼层 |阅读模式
ATM柜员机模拟程序

要求使用图形用户界面:
1、通过主界面,可以进入管理员界面、用户界面、系统设置界面、退出;
2、启动软件,可以进入用户模式,也可以进入系统管理模式;
3、进入系统管理模式,需要输入管理员账号和密码,可以查看这台ATM机近期资金出入明细,可以查看这台ATM机上面操作的所有账户的历史记录和明细;
4、进入用户账号和密码的登录界面,当输入给定的卡号和密码(初始卡号16位和密码6位)时,对比系统存储的账号和密码正确,能登录ATM柜员机系统,当日出错次数操作3次,当日锁定账户不能继续操作,累计三日被锁定,需要管理员账号才能够完成解锁操作。
用户可以按照以下规则进行操作:
1、查询余额:初始余额为100000元;
2、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支;
3、ATM存款:不能出现负存款,要求存钱为100的整数倍;
4、ATM转账:通过登录的用户向指定的银行账号(在系统中已经保存)转账,若银行卡不存在,则提
示银行卡号输入错误,转账成功则提示“转账成功”,并且工具日期能够实现当日转账金额的限制;
5、历史交易记录查询,要求能够保存20条以上的交易记录;
6、修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码;
7、退卡:点击退卡,返回登录界面。
主界面

//文件名:MainInterface.java
package ATM;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public abstract class MainInterface implements ActionListener {
        static JFrame mainJFrame=new JFrame();
        static JLabel lbl=new JLabel("ATM柜员机模拟程序——主界面",JLabel.CENTER);
        static JButton bt_userMode=new JButton("用户模式");
        static JButton bt_systemManagementMode=new JButton("系统管理模式");
        static JButton bt_signOut=new JButton("退出");
        public static void main(String[] args) {
                mainJFrame.setTitle("ATM柜员机模拟程序——主界面");
                mainJFrame.setBounds(0, 0, 800, 600);用户登录界面

//文件名:UserLoginInterface.java
package ATM;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
public class UserLoginInterface {
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        static SimpleDateFormat time;
        static Date date;
    static Calendar calendar;系统设置界面

//文件名:SystemSettingInterface.java
package ATM;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class SystemSettingInterface {
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        static JFrame mainJFrame_2=new JFrame();
        static JLabel lbl=new JLabel("ATM柜员机模拟程序——系统设置界面",JLabel.CENTER);
        static JDialog diag_message=new JDialog();
        static JLabel lb_message=new JLabel();
        static JLabel lb_name=new JLabel("帐号");用户界面

//文件名:UserInterface.java
package ATM;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
public class UserInterface {
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        static SimpleDateFormat time;
        static Date date;
        //用户界面组件管理员界面

//文件名:AdministratorInterface.java
package ATM;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
public class AdministratorInterface {
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        static SimpleDateFormat time;
        static Date date;
        static JFrame mainJFrame_4=new JFrame();UserTest

//文件名:UserTest.java
package ATM;
import java.io.*;
import java.util.*;
public class UserTest {
        static ArrayList<UserAccount> userArrayList;//集合类-ArrayList类
        static UserAccount currentUserAccount;//当前用户账号
        static UserAccount currentUserAccount_1;//当前被转帐用户账号
        static File userFile;//File类
        static File currentUserFile;//当前用户文件
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        public static void main(String[] args) throws Exception {
                userArrayList=new ArrayList<UserAccount>();//集合类-ArrayList类UserAccount

//文件名:UserAccount.java
package ATM;
public class UserAccount {
        String userAccount;
        String password;
        float balance;
}AdministratorTest

//文件名:AdministratorTest.java
package ATM;
import java.io.*;
import java.util.*;
public class AdministratorTest {
        static ArrayList<AdministratorAccount> administratorArrayList;//集合类-ArrayList类
        static AdministratorAccount currentAdministratorAccount;//当前管理员账号
        static File administratorFile;//File类
        static File currentAdministratorFile;//当前管理员文件
        static FileReader fr;//FileReader类
        static FileWriter fw;//FileWriter类
        public static void main(String[] args) throws Exception {
                administratorArrayList=new ArrayList<AdministratorAccount>();//集合类-ArrayList类
                currentAdministratorAccount=new AdministratorAccount(null,null,0);//当前管理员账号AdministratorAccount

//文件名:AdministratorAccount.java
package ATM;
public class AdministratorAccount {
        String administratorAccount;
        String password;
        float balance;
}原文作者:陈相宇_xxxx
原文链接:https://segmentfault.com/a/1190000023961648
原文出处:CSDN
回复

使用道具 举报

4

主题

9

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2023-3-5 02:56:12 | 显示全部楼层
没写完啊,怎么不发出完整的
回复

使用道具 举报

1

主题

6

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-3-5 02:56:30 | 显示全部楼层
好的,稍后会发出来
[干杯]
回复

使用道具 举报

1

主题

6

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-3-5 02:57:13 | 显示全部楼层
作者有源代码吗
回复

使用道具 举报

2

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-3-5 02:57:29 | 显示全部楼层
是的,有完整的?
回复

使用道具 举报

0

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2023-3-5 02:58:01 | 显示全部楼层
有源代码嘛[大哭][大哭]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表