Java面向对象练习题之银行卡类和用户类
生活随笔
收集整理的這篇文章主要介紹了
Java面向对象练习题之银行卡类和用户类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
定義銀行賬戶類 Account
有屬性: 卡號ID 余額 balance 所屬用戶 Customer
銀行賬戶類 Account 含有的方法
1.獲取卡的詳細信息
2.取錢功能,如果取錢成功,返回true,否則返回false
3.存錢功能,如果存錢成功,返回true,否則返回false
所屬用戶Customer類,有屬性:姓名,身份證號,聯系電話,家庭住址等
用戶Customer類包含的方法
1.查看個人信息功能
2.修改個人信息功能
編寫程序構建一個銀行類Bank,測試賬戶類對象 和 用戶類對象,并進行信息設置和信息展示
account類
package TodayHw2;public class Account {private String ID; // 卡號private double balance; // 余額private Customer customer; // 所屬用戶// 可以優化,增加密碼// 存取時,判斷賬號密碼//獲取卡的詳細信息public void showInfo() {System.out.println("卡號: " + ID);System.out.println("余額: " + balance);System.out.println("賬戶名: " + customer.getName());System.out.println("手機號: " + customer.getPhone());System.out.println("地址: " + customer.getAddress());System.out.println("身份證: " + customer.getPID());}// 取錢功能// 優化 !!!! 先輸入銀行卡賬號,和密碼進行校驗在進行操作public void getMoney(double getmoney) {System.out.println("取錢功能");if (getmoney > getBalance()) {System.out.println("取錢失敗,余額不足!");} else {setBalance(getBalance() - getmoney); // 余額減去取得錢System.out.println(customer.getName() + "賬戶取出" + getmoney);System.out.println("余額: " + getBalance());}}// 存錢功能public void saveMoney(double savemoney) {System.out.println("存錢功能");setBalance(getBalance() + savemoney);System.out.println(customer.getName() + "賬戶存入" + savemoney);System.out.println("余額: " + getBalance());}public Account() {}public Account(String ID, double balance, Customer customer) {this.ID = ID;this.balance = balance;this.customer = customer;}public String getID() {return ID;}public void setID(String ID) {this.ID = ID;}public double getBalance() {return balance;}public void setBalance(double balance) {this.balance = balance;}public Customer getCustomer() {return customer;}public void setCustomer(Customer customer) {this.customer = customer;} }customer類
package TodayHw2;public class Customer {private String name; // 姓名private String PID; // 身份證號private String phone; // 聯系電話private String address; // 家庭住址private Account account;// 賬戶public Account getAccount() {return account;}public void setAccount(Account account) {this.account = account;}// 查看個人信息功能public void showCustInfo(){System.out.println(getName());System.out.println(getAddress());System.out.println(getPID());System.out.println(getPhone());}// 修改個人信息功能public void editCustInfo(String name,String phone ,String address){this.setName(name);this.setPhone(phone);this.setAddress(address);}@Overridepublic String toString() {return "Customer{" +"name='" + name + '\'' +", PID='" + PID + '\'' +", phone='" + phone + '\'' +", address='" + address + '\'' +'}';}public Customer() {}public Customer(String name, String PID, String phone, String address, Account account) {this.name = name;this.PID = PID;this.phone = phone;this.address = address;this.account = account;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPID() {return PID;}public void setPID(String PID) {this.PID = PID;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone = phone;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;} }測試類
package TodayHw2;import java.util.Scanner;public class TestBank {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);Customer c = new Customer();Account a = new Account();c = new Customer("Virus", "A1587", "0571", "浙江省嘉興市南湖區月河街區",a);a = new Account("1", 100,c);a.showInfo();// 取錢System.out.println("請輸入要取的錢: ");double getmoney = scanner.nextDouble();a.getMoney(getmoney);// 存錢System.out.println("請輸入要存的錢");double savemoney = scanner.nextDouble();a.saveMoney(savemoney);// 查看信息c.showCustInfo();// 修改信息System.out.println("請輸入修改后的姓名");String name = scanner.next();System.out.println("請輸入修改后的電話號碼");String phone = scanner.next();System.out.println("請輸入修改后的地址");String address = scanner.next();c.editCustInfo(name,phone,address);// 查看信息c.showCustInfo();} }總結
以上是生活随笔為你收集整理的Java面向对象练习题之银行卡类和用户类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (转载)位图的光栅操作及ROP码解析
- 下一篇: java中applet下载,Java A