หนึ่ง. ระบบนี้จำลองผู้ใช้ธนาคารโดยใช้เครื่อง ATM เพื่อเปิดบัญชีการสืบค้นฝากเงินและถอนเงินและต้องใช้การเขียนโปรแกรมโดยใช้ภาษา Java
ภาพประกอบ:
1. สำหรับข้อยกเว้นการป้อนข้อมูลข้อมูลคุณสามารถใช้กลไกการจัดการข้อยกเว้น Java เพื่อจัดการได้
2. คะแนนจะได้รับการประเมินในลักษณะที่รวมการใช้งานการใช้งานเข้ากับรหัสบรรทัดฐาน
3. หากคุณมีคำถามใด ๆ เกี่ยวกับข้อกำหนดของโครงการคุณสามารถติดต่อฉันได้ตลอดเวลาโดยฝากข้อความ QQ เพื่อขอคำปรึกษา
4. ในช่วงวันหยุดวันชาติครูทำงานที่ บริษัท ทุกวัน ฉันปฏิบัติหน้าที่ที่ บริษัท ในวันที่ 4 ตุลาคมและฉันไปทำงานตามปกติในวันที่ 7 ตุลาคม ทุกคนยินดีที่จะมาที่ บริษัท เพื่อทำโครงการ
สอง. ข้อกำหนดการทำงานของโครงการ:
โครงการเริ่มทำงานและแสดงเมนูหลักเป็น:
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
ในเวลานี้ผู้ใช้สามารถเลือกฟังก์ชั่นที่เขาต้องการใช้ผ่านอินพุตแป้นพิมพ์ หากอินพุตไม่ใช่ 0, 1, 2, 3, 4 ระบบจะแจ้งให้ทราบ:
เมนูที่คุณเลือกไม่มีอยู่!
กรุณาเลือกอีกครั้ง:
ขอให้ผู้ใช้ป้อนข้อมูลสำหรับการเลือกเมนูอีกครั้ง!
เมื่อผู้ใช้ป้อน 0 ฟังก์ชั่นการสืบค้นจะถูกป้อน: ระบบพรอมต์ระบบ:
-
คุณเลือกฟังก์ชั่นการเปิดบัญชี
กรุณากรอกชื่อของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนชื่อของเขา หลังจากอินพุตเสร็จสิ้นระบบจะแจ้ง:
กรุณากรอกหมายเลขประจำตัวของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนหมายเลข ID 18 หลัก หากการตรวจสอบล้มเหลวและต้องการอินพุตอย่างต่อเนื่องระบบจะแจ้งเตือน:
กรุณากรอกรหัสผ่านของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนรหัสผ่านดิจิตอลบริสุทธิ์ 6 หลัก หากการตรวจสอบล้มเหลวและต้องการอินพุตอย่างต่อเนื่องระบบจะแจ้งหลังจากผ่านการตรวจสอบแล้ว:
การเปิดบัญชีนั้นประสบความสำเร็จขอบคุณที่ใช้มัน!
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
เมื่อผู้ใช้ป้อน 1 ฟังก์ชั่นการสืบค้นจะถูกป้อน: พรอมต์ระบบ:
-
คุณเลือกฟังก์ชั่นการสืบค้น
กรุณากรอกหมายเลขบัตรที่คุณต้องการสอบถาม:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนหมายเลขการ์ดแบบสอบถามและระบบจะตรวจสอบหมายเลขบัตร หากไม่มีหมายเลขบัตรจะแจ้งให้ทราบ: หมายเลขบัตรที่คุณป้อนไม่มีอยู่โปรดกลับเข้ามาอีกครั้ง:
กรุณากรอกหมายเลขบัตรที่คุณต้องการสอบถาม:
ป้อนหมายเลขบัตรอีกครั้ง เมื่อผู้ใช้ป้อนหมายเลขบัตรที่ถูกต้องพรอมต์คือ:
กรุณากรอกรหัสผ่านของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนรหัสผ่านดิจิตอลบริสุทธิ์ 6 หลัก หากการตรวจสอบล้มเหลวและต้องการอินพุตต่อเนื่อง (สูงสุด 3 ครั้ง) ระบบจะแสดงข้อมูลบัญชีผู้ใช้ปัจจุบันและป้อนเมนูหลักหลังจากผ่านการตรวจสอบแล้ว:
ข้อมูลบัญชีที่คุณกำลังสอบถามคือ:
-
หมายเลขบัตรประจำตัวหมายเลขบัตรบัตรประจำตัวหมายเลขบัตรหมายเลขบัตร
Zhang Sanfeng420106198410112062 111111 12800.0
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
เมื่อผู้ใช้ป้อน 2 ฟังก์ชั่นการฝากจะถูกป้อน: ระบบพรอมต์ระบบ:
-
ตัวเลือกของคุณคือฟังก์ชั่นการฝากเงิน
กรุณากรอกหมายเลขบัตรที่คุณต้องการฝาก:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนหมายเลขบัตรของเงินฝากและระบบจะตรวจสอบหมายเลขบัตร หากไม่มีหมายเลขบัตรพรอมต์คือ:
หมายเลขบัตรที่คุณป้อนไม่มีอยู่โปรดกลับเข้ามาอีกครั้ง:
กรุณากรอกหมายเลขบัตรที่คุณต้องการฝาก:
ป้อนหมายเลขบัตรอีกครั้ง เมื่อผู้ใช้ป้อนหมายเลขบัตรที่ถูกต้องพรอมต์คือ:
กรุณากรอกรหัสผ่านของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนรหัสผ่านดิจิตอลบริสุทธิ์ 6 หลัก หากการตรวจสอบล้มเหลวและต้องการอินพุตต่อเนื่อง (สูงสุด 3 ครั้ง) ระบบจะแสดงข้อมูลบัญชีผู้ใช้ปัจจุบันและป้อนเมนูหลักหลังจากผ่านการตรวจสอบแล้ว:
ข้อมูลบัญชีที่คุณต้องการฝากคือ:
-
หมายเลขบัตรประจำตัวหมายเลขบัตรบัตรประจำตัวหมายเลขบัตรหมายเลขบัตร
Zhang Sanfeng420106198410112062 111111 12800.0
โปรดป้อนจำนวนเงินที่คุณต้องการฝาก:
ในเวลานี้ผู้ใช้จะต้องป้อนจำนวนเงินฝากและระบบจะตัดสินจำนวนเงิน หากข้อมูลอินพุตน้อยกว่าหรือเท่ากับ 0 จะได้รับแจ้ง:
ข้อมูลที่คุณป้อนไม่ถูกต้องและระบบจะออกโดยอัตโนมัติ! ขอบคุณที่ใช้
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
หากผู้ใช้ป้อนข้อมูลอย่างถูกกฎหมายระบบจะแจ้งให้ทราบว่าเงินฝากสำเร็จและกลับไปยังเมนูหลัก:
เงินฝากประสบความสำเร็จขอบคุณที่ใช้มัน!
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
ข้อมูลจะถูกฝากเข้าบัญชีผู้ใช้ หากผู้ใช้ค้นหาข้อมูลอีกครั้งเขาสามารถดูจำนวนบัญชีที่เปลี่ยนแปลงได้ (หมายเหตุ: ระบบนี้ใช้ไฟล์สำหรับการจัดเก็บข้อมูลดังนั้นหากผู้ใช้รีสตาร์ทโปรแกรมข้อมูลจะถูกอ่านจากไฟล์และเริ่มต้นใหม่ไปยังหน่วยความจำ! ฟังก์ชั่นนี้เป็นทางเลือกคุณสามารถอ้างถึงการทำให้เป็นอนุกรม
เมื่อผู้ใช้ป้อน 3 ฟังก์ชั่นการถอนจะถูกป้อน: System Prompt:
-
โปรดป้อนหมายเลขบัตรที่คุณต้องการถอนเป็นฟังก์ชั่นการถอน:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนหมายเลขบัตรสำหรับการถอน ระบบจะตรวจสอบหมายเลขบัตร หากหมายเลขบัตรไม่มีอยู่จะได้รับแจ้ง:
หมายเลขบัตรที่คุณป้อนไม่มีอยู่โปรดกลับเข้ามาอีกครั้ง:
กรุณากรอกหมายเลขบัตรที่คุณต้องการถอน:
ป้อนหมายเลขบัตรอีกครั้ง เมื่อผู้ใช้ป้อนหมายเลขบัตรที่ถูกต้องพรอมต์คือ:
กรุณากรอกรหัสผ่านของคุณ:
ในเวลานี้ผู้ใช้จำเป็นต้องป้อนรหัสผ่านดิจิตอลบริสุทธิ์ 6 หลัก หากการตรวจสอบล้มเหลวและต้องการอินพุตต่อเนื่อง (สูงสุด 3 ครั้ง) ระบบจะแสดงข้อมูลบัญชีผู้ใช้ปัจจุบันและป้อนเมนูหลักหลังจากผ่านการตรวจสอบแล้ว:
ข้อมูลบัญชีที่คุณต้องการถอนคือ:
-
หมายเลขบัตรประจำตัวหมายเลขบัตรบัตรประจำตัวหมายเลขบัตรหมายเลขบัตร
Zhang Sanfeng420106198410112062 111111 12800.0
โปรดป้อนจำนวนเงินที่คุณต้องการถอน:
ในเวลานี้ผู้ใช้จะต้องป้อนจำนวนเงินถอนและระบบจะตัดสินจำนวนเงิน หากข้อมูลอินพุตน้อยกว่า 0 หรือมากกว่าจำนวนเงินทั้งหมดของบัญชีพรอมต์คือ:
ข้อมูลที่คุณป้อนไม่ถูกต้องและระบบจะออกโดยอัตโนมัติ! ขอบคุณที่ใช้
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
หากผู้ใช้ป้อนข้อมูลอย่างถูกกฎหมายระบบจะแจ้งว่าการถอนจะสำเร็จและกลับไปยังเมนูหลัก:
การถอนตัวประสบความสำเร็จขอบคุณที่ใช้มัน!
ระบบเทอร์มินัลบริการตนเองของธนาคาร
-
0 .----- เปิดบัญชี
1 .-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 .----- เงินฝาก
3 .----- การถอน
4 .------ ออก
-
โปรดเลือกฟังก์ชั่นที่คุณต้องการดำเนินการ:
ข้อมูลจะถูกหักออกจากบัญชีของผู้ใช้ หากผู้ใช้ค้นหาข้อมูลอีกครั้งเขาสามารถดูจำนวนบัญชีที่เปลี่ยนแปลงได้
เมื่อผู้ใช้ป้อน 4 ระบบจะออก
สาม. ข้อกำหนดการออกแบบ
(1) แพ็คเกจหนึ่ง: com.bank.UnionPay หมายถึง UnionPay, เพิ่มภายใต้แพ็คเกจนี้:
มันหมายถึงอินเทอร์เฟซกับบัตรธนาคารรวมถึงวิธีการนามธรรมเช่นการสืบค้นยอดเงินฝากเงินการถอน ฯลฯ
มันแสดงถึงคลาสนามธรรมที่แสดงถึงเครื่อง ATM ใช้วัตถุประเภทบัตรธนาคารเป็นแอตทริบิวต์หรือพารามิเตอร์ใช้วิธีการอินสแตนซ์เช่นยอดคงเหลือในการสืบค้นเงินฝากการถอน ฯลฯ และเพิ่มการเปิดบัญชีเป็นวิธีนามธรรม
มันแสดงถึงประเภทการแจงนับของธนาคารหลักทั้งสี่: รวมถึง ABC, ICBC, CCB และ BOC; มันแสดงถึงธนาคารเกษตรของจีน, ธนาคารอุตสาหกรรมและพาณิชยกรรมของจีน, CCB และธนาคารของจีนตามลำดับ
(2) แพ็คเกจ 2: com.bank.abc เป็นตัวแทนของธนาคารเกษตรของจีนเพิ่มภายใต้แพ็คเกจนี้:
กำหนดชั้นเรียนธนาคารในรูปแบบซิงเกิลรวมถึงแอตทริบิวต์: ประเภทธนาคาร (ประเภทการแจกแจง, ค่าคงที่ = ABC), ชื่อธนาคาร (สตริง), รายการบัตรธนาคาร (SET) ฯลฯ
กำหนดคลาสการใช้งานของบัตรธนาคาร - บัตรออมรวมรวมถึงแอตทริบิวต์: ประเภทธนาคาร (ประเภทการแจงนับ = ABC), ชื่อ, หมายเลขรหัส, หมายเลขบัตร, รหัสผ่าน, ยอดคงเหลือ; ใช้วิธีการสอบถามยอดคงเหลือการฝากเงินการถอน ฯลฯ
กำหนดคลาสย่อยของเครื่อง ATM รวมถึงแอตทริบิวต์: ประเภทของธนาคาร (ประเภทการแจกแจง, ค่าคงที่ = ABC), การใช้วิธีการเปิดบัญชีซึ่ง: สามารถเปิดการ์ดออมได้เท่านั้นหมายเลขบัตรคือหมายเลขสุ่ม 6 หลักซึ่งสร้างขึ้นโดยอัตโนมัติ บัตรธนาคารที่เพิ่งเปิดใหม่จะถูกเพิ่มในรายการบัตรธนาคารของธนาคาร
กำหนดคลาสย่อยของบัตรออมทรัพย์ - บัตรเครดิตเพิ่มแอตทริบิวต์: ขีด จำกัด การเบิกเกินบัญชี, วิธีการถอนเงินใหม่และควบคุมจำนวนเงินถอนสูงสุดไม่สามารถมากกว่าผลรวมของยอดคงเหลือ + เกินขีด จำกัด
(3) แพ็คเกจ 3: com.bank.test แสดงถึงการทดสอบเพิ่มคลาสทดสอบด้วยวิธีการหลักภายใต้แพ็คเกจนี้เพื่อตระหนักถึงฟังก์ชั่นของเครื่อง ATM แบบจำลองที่ต้องการโดยโครงการ
เลือกฟังก์ชั่นต่อไปนี้:
ใช้ ICBC ในโหมดรัฐเดียวเพิ่มบัตรธนาคารหลายใบลงในชั้นทดสอบโดยค่าเริ่มต้นและใช้ฟังก์ชั่นการสืบค้นข้ามธนาคารและการฝากเงินและการถอนบนเครื่องเอทีเอ็มของธนาคารเกษตร
แพ็คเกจ 1: com.bank.unionpay
1. ชั้นเรียนนามธรรมของธนาคาร
แพ็คเกจ com.bank.unionpay; อินเทอร์เฟซสาธารณะ yinhangka {โมฆะสาธารณะ cun (); โมฆะสาธารณะ qu (); โมฆะสาธารณะ geteyu ();}2. ระบุประเภทธนาคาร
แพ็คเกจ com.bank.unionpay; enum สาธารณะ yinhang {abc ("ธนาคารเกษตร"), ICBC ("อุตสาหกรรมและเชิงพาณิชย์"), ccb ("ccb"), boc ("ธนาคารแห่งจีน"); this.yinhang;}}3. คลาส ATM
แพ็คเกจ com.bank.unionpay; นำเข้า com.bank.abc.yinhanglei; บทคัดย่อระดับสาธารณะ ATM {Private Yinhanglei YHL; // แอตทริบิวต์ระดับธนาคารส่วนตัวสองเท่า; // ตัวแปร yuepublic double geteyue () {return yue;} โมฆะสาธารณะ setyue (สอง yue) {this.yue = yue;} // วิธีการสอบถามโมฆะสาธารณะ yue () {system.out.println ("ความสมดุลของการ์ดคือ:" +this.yue);} // CUN) {ถ้า (cun <0) {system.out.println ("อินพุตไม่ถูกต้อง");} else {this.yue+= cun; system.out.println ("ยอดคงเหลือบนการ์ดคือ:" this.yue);}} // วิธีการถอน ไม่เพียงพอ ");} else {this.yue- = qu; system.out.println (" ยอดคงเหลือบนการ์ดคือ: "+this.yue);}} // กำหนดวิธีนามธรรมของการเปิดบัญชีสาธารณะ4. คลาสอินเตอร์เฟสหลัก
แพ็คเกจ com.bank.unionpay; นำเข้า java.util.arraylist; นำเข้า java.util.list; นำเข้า java.util.scanner; ชั้นเรียนสาธารณะ Zujiemian {โมฆะสาธารณะ Zhujiemian () {System.out.out.println ( System "); System.out.println (); System.out.println (" ******************************** "); system.out.println (); รายการ <string> li = new ArrayList <String> (); li.add (" บัญชี " การเปิด "); li.add (" คำถาม "); li.add (" เงินฝาก "); li.add (" ออก "); li.add (" ใบแจ้งหนี้ "); li.add (" ออก "); i = 0; i <5; i ++) {system.out.println (i+"------"+li.get (i));} system.out.println (); system.out.println ("*******************" ดำเนินการ: ");}}แพ็คเกจ 2: com.bank.abc
1. หมวดหมู่การเปิดบัญชี ATM2
แพ็คเกจ com.bank.abc; นำเข้า java.util.random; นำเข้า java.util.scanner; นำเข้า com.bank.unionpay.atm; นำเข้า com.bank.unionpay.yinhang; ชั้นเรียนสาธารณะขยาย ATM @Overridepublic เป็นโมฆะ kaihu () {// วิธีการเปิดบัญชี // ป้อนชื่อ cuxuka cxk = new Cuxuka (); ลอง {Scanner sc1 = เครื่องสแกนใหม่ (System.in); System.out.println ("โปรดป้อนชื่อของคุณ:"); System.out.println ("โปรดป้อนหมายเลขบัตรประจำตัวประชาชนของคุณ:"); สำหรับ (int ig = 0; ig> = 0; ig ++) {Scanner sc2 = ใหม่สแกนเนอร์ (System.in); string str = sc2.nextline (); st1 = "// d {15} | // d {17} [// dxx]"; ถ้า (str.matches (st1)) {cxk.setshenfen (str); break;} else {system.out.println ("หมายเลขรหัสที่ป้อน รหัสผ่าน: "); สำหรับ (int ig = 0; ig> = 0; ig ++) {Scanner sc3 = ใหม่สแกนเนอร์ (System.in); String pass = sc3.nextline (); string mm =" // d {6} " รหัสผ่าน ");}} // สร้างหมายเลขบัตรออม 6 หลักสุ่ม A = ใหม่สุ่ม (); int [] ch = new int [6]; stringbuilder str = new Stringbuilder (); string s; สำหรับ (int i = 0; i <6; i ++) {ch [i] = a.nextint (9) C: ch) {str.append (c);} s = str.toString (); cxk.setcard (s); // นำเข้าข้อมูลที่สร้างขึ้นในรายการบัตรธนาคาร yinhanglei.getyinhanglei () list.add (cxk.getcard (); yinhanglei.getyinhanglei (). map.put (cxk.getcard (), cxk); system.out.println ("หมายเลขบัตรใหม่ของคุณคือ:"+cxk.getcard ()); system.out.println ("การเปิดบัญชีนั้นประสบความสำเร็จขอบคุณสำหรับการใช้"))2. หมวดหมู่บัตรออมทรัพย์
แพ็คเกจ com.bank.abc; นำเข้า java.util.scanner; นำเข้า com.bank.unionpay.yinhang; นำเข้า com.bank.unionpay.yinhangka; คลาสสาธารณะ Cuxuka ใช้ Yinhangka {// บันทึกแอตทริบิวต์ส่วนตัว Yinhang Yinhang ส่วนตัว ();@overridepublic String toString () {return "name =" + name + "/t/n" + "card card =" + shenfen + "/t/n" + "หมายเลขการ์ด =" + card + "/n" + "จำนวนเงิน =" balance;} // getName () {return name;} public void setName (ชื่อสตริง) {this.name = name;} public String getShenfen () {return shenfen;} โมฆะสาธารณะ setshenfen (String Shenfen) {this.shenfen = shenfen; การ์ด;} สตริงสาธารณะ getPassword () {ส่งคืนรหัสผ่าน;} โมฆะสาธารณะ setPassword (รหัสผ่านสตริง) {this.password = รหัสผ่าน;} public double getBalance () {return balance;} โมฆะสาธารณะ setBalance (สมดุลสองครั้ง) {this.balance = balance; cuxuka (); cu1.chaxun (); Scanner sc2 = ใหม่สแกนเนอร์ (system.in); system.out.println ("โปรดป้อนจำนวนเงินที่คุณต้องการฝาก:"); double cun = sc2.nextdouble () โดยเฉพาะ ขอบคุณสำหรับการใช้ ");} else {this.balance+= cun; yinhanglei.getyinhanglei (). map.get (cu1.card) .setbalance (สมดุล); system.out.println (" disclaimer ประสบความสำเร็จ วิธีการเป็นโมฆะสาธารณะ chaxun () {ในขณะที่ (จริง) {ลอง {Scanner sc = ใหม่สแกนเนอร์ (System.in); System.out.println ("โปรดป้อนหมายเลขบัตรที่คุณต้องการสอบถาม:"); String s = sc.nextline (); Temp: Yinhanglei.getyinhanglei (). map.keyset ()) {ถ้า (s.equals (temp)) {this.card = s;}} ถ้า (s.equals (การ์ด)) // ตรวจสอบหมายเลขการ์ด {int i = 0; st1 = sc1.nextline (); ถ้า (st1.equals (yinhanglei.getyinhanglei (). map.get (s) .getPassword ())) {system.out.println ("ข้อมูลบัญชีที่คุณกำลังสอบถาม คือ: "); System.out.println (); System.out.println (" *************************************************************************** จำนวน "); system.out.println (); system.out.println (yinhanglei.getyinhanglei (). map.get (s)); break;}} {i ++; ถ้า (i == 3) {system.out.println ( ข้อผิดพลาด ");}}}} else {system.out.println (" โปรดยืนยันว่าหมายเลขบัตรถูกป้อนไม่ถูกต้อง ");}}} catch (ข้อยกเว้น e) {system.out.println (" อินพุตไม่ถูกต้อง ");} break; cuxuka (); cu.chaxun (); Scanner sc1 = เครื่องสแกนใหม่ (System.in); System.out.println ("โปรดป้อนจำนวนเงินที่คุณต้องการถอน:"); double qu = sc1.nextdouble (); // ใช้วิธีการถอนเงิน if (qu <balance) {this.balance- = qu; yinhanglei.getyinhanglei (). map.get (cu.card) .setBalance (สมดุล); system.out.println ("การถอนสำเร็จจำนวนที่เหลือคือ:" yinhanglei.getyinhanglei {system.out.println ("ข้อมูลที่คุณป้อนไม่ถูกต้องระบบจะออกโดยอัตโนมัติ! ขอบคุณสำหรับการใช้ ") ;;} else {system.out.println (" ยอดคงเหลือไม่เพียงพอ ");}}@overridepublic เป็นโมฆะ geteyu () {// การคำนวณยอดคงเหลือ cuxuka cu = new Cuxuka (); system.out.println (3. หมวดหมู่ธนาคาร Singleton Model
แพ็คเกจ com.bank.abc; นำเข้า java.util.arraylist; นำเข้า java.util.hashmap; นำเข้า java.util.list; นำเข้า java.util.map; นำเข้า com.bank.Unionpay.yinhang; ArrayList <> (); แผนที่สาธารณะ <String, Cuxuka> MAP = ใหม่ HashMap <> (); // วิธีการก่อสร้างส่วนตัว Private Yinhanglei () {super ();} ธนาคาร Yinhanglei คงที่ส่วนตัว = ใหม่ yinhanglei ();4. หมวดหมู่บัตรเครดิต
แพ็คเกจ com.bank.Abc; คลาสสาธารณะ Xinyongka ขยาย Cuxuka {// สร้างแอตทริบิวต์ของคุณเองส่วนตัวสอง double touzhi; public double gettouzhi () {return touzhi;} public void settouzhi (double touzhi) {tou.touzhi = touzhi; วิธีการถอนถ้า ((touzhi+getBalance ())> = qu) {system.out.println ("จำนวนเงินเกินจำนวน"+(qu-getbalance ())) ;;} else {system.out.println ("ไม่สามารถถอนได้มากกว่าจำนวนมหาศาลสูงสุด");แพ็คเกจ 3: com.bank.test
1. คลาสทดสอบ
แพ็คเกจ com.bank.test; นำเข้า java.util.arraylist; นำเข้า java.util.list; นำเข้า java.util.scanner; นำเข้า com.bank.abc.atm2; นำเข้า com.bank.abc.cuxuka; นำเข้า com.bank.Unionpay.atm; args) {// การสร้างอินเตอร์เฟสหลัก cuxuka cxk = new cuxuka (); // อินเทอร์เฟซอินเตอร์เฟสหลัก zujiemian zjm = ใหม่ zujiemian (); // top as {// สร้าง loop ที่ตายแล้วสำหรับ (int i = 0; i> = 0; ใน = sc.nextint (); // ปกป้องว่าหมายเลขอินพุตตรงกับหมายเลขอินเตอร์เฟสหรือไม่ถ้า (ใน == 0 || ใน == 1 || ใน == 2 || ใน == 3 || ใน == 4) {// ฟังก์ชั่นการเปิดถ้า (ใน == 0) {atm2 atm2 = ใหม่ atm2 (); atm2.kaihu (); system.out.println ("*****************************"); system.out.println ("คุณเลือกเป็นฟังก์ชั่นการเปิดบัญชี"); system.out.println (); if (in == 1) {system.out.println ("**************************"); system.out.println ("คุณเลือกเป็นฟังก์ชั่นการสืบค้น"); cxk.chaxun (); == 2) {system.out.println ("*****************************"); System.out.println ("ตัวเลือกของคุณคือฟังก์ชั่นการฝากเงิน"); cxk.cun (); if (ใน == 3) {system.out.println ("***********************"); system.out.println ("ตัวเลือกของคุณคือฟังก์ชั่นการถอน"); cxk.qu (); ดำเนินการต่อ;} // ฟังก์ชั่นทางออกถ้า (ใน == 4) "); break;}} // พิมพ์อื่น ๆ {system.out.println (" เมนูที่คุณเลือกไม่มีอยู่! ");}} // ข้อยกเว้นโยนพิมพ์} catch (ข้อยกเว้น e) {system.out.println (" อินพุตไม่ถูกต้อง ");}}}}}}}}}}ผลลัพธ์:
ข้างต้นคือระบบเทอร์มินัลบริการตนเองของธนาคาร Java จำลองด้วยตัวแก้ไข ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับทุกคนในเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!