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

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;
	}
}

猜你喜欢

转载自blog.csdn.net/qq_36639124/article/details/80342827