使用封装完成银行系统 * 1.用户可以进行登录,登录不成功则继续登录,直到登录成功为止 * 2.可以完成取钱功能(余额不够则给出提示) * 3.可以完成存钱功能

本文介绍了一个简单的银行系统设计,该系统使用Java实现,包括用户登录、存款和取款等功能。系统通过循环确保用户登录成功,并提供了基本的账户管理操作。
import java.util.Scanner;

/**
 * 使用封装完成银行系统 
 * 1.用户可以进行登录,登录不成功则继续登录,直到登录成功为止 
 * 2.可以完成取钱功能(余额不够则给出提示)
 * 3.可以完成存钱功能
 * 
 * @author Administrator
 */
public class BankSys {
	// 定义一个成员变量为用户对象
	User user;
	// 余额
	double money; 
	// 取钱金额
	double getMoney;
	
	/**
	 * 设置默认用户的用户名,密码
	 */
	public void setUser(){
		user = new User("lzl", "123");
	}
	
	/**
	 * 登录方法
	 * @param username 传进来的用户名
	 * @param password 传进来的密码
	 * @return
	 */
	public boolean login(String username, String password) {
		if (user.getUserName().equals(username) && user.getPwd().equals(password)) {
			return true;
		} else {
			return false;
		}
	}
	
	/**
	 * 存钱方法
	 */
	public void saveMoney(){
		System.out.println("请输入存款金额:");
		Scanner in = new Scanner(System.in);
		money = money + in.nextDouble();
		
		System.out.println("存钱成功!-----------当前余额为:" + money + "元");
	}
	
	/**
	 * 取钱方法
	 */
	public void getMoney(){
		System.out.println("请输入取款金额:");
		Scanner in = new Scanner(System.in);
		getMoney = in.nextDouble();
		
		if (getMoney > money) {
			System.out.println("余额不足,取款失败!");
		}else {
			money = money - getMoney;
			System.out.println("取款成功!-----------当前余额为:" + money + "元");
		}
	}
	
	
	public static void main(String[] args) {
		// 创建银行系统对象
		BankSys bankSys = new BankSys();
		bankSys.setUser();
		
		System.out.println("=========欢迎进入xxx银行========");
		Scanner scanner = new Scanner(System.in);
		
		// 用户登录,登录失败则一直登录
		do {
			System.out.println("请输入用户名:");
			String username = scanner.next();
			System.out.println("请输入密码:");
			String password = scanner.next();
			
			boolean flag = bankSys.login(username, password);
			if (flag) {
				System.out.println("登录成功!欢迎" + username);
				break;
			}else {
				System.out.println("用户名或密码错误,请重新输入!");
			}
		} while (true);
		
		// 用户存取款功能
		do {
			System.out.println("请选择要进行的操作:1.存款\t2.取款\t0.退出");
			int choice = scanner.nextInt();
			
			switch (choice) {
			case 1:
				bankSys.saveMoney();
				break;
			case 2:
				bankSys.getMoney();
				break;
			case 0:
				System.out.println("退出成功!");
				System.exit(0);
				break;
			default:
				System.out.println("选择的操作有误!");
				break;
			}
		} while (true);
	}
}

/**
 * 用户类
 * @author Administrator
 *
 */
class User{
	// 定义用户的属性:用户名,密码
	private String userName;
	private String pwd;
	
	// 定义成员变量对应的get和set方法,以便外界可以对其成员变量进行操作
	// 方法的封装
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	
	
	public User() {}// 无参的构造方法
	
	public User(String userName,String pwd) {// 有参的构造方法
		this.userName = userName;
		this.pwd = pwd;
	}
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值